본문 바로가기

반응형

Coding/오류

파이참 (Pycharm) 오류 : "ImportError: cannot import name 'eq' from 'operator' operator 관련된 내용을 작성하고자 파이썬 파일명을 operator이라고 지정한 것이 문제였다. 모듈명과 동일한 이름의 파일명을 지정해서는 안 된다. 파일명만 수정해준다면 오류가 발생하지 않는다. 더보기
__thiscall : 외부 기호(참조 위치)에서 확인하지 못했습니다. 함수의 선언문만 있고 정의가 없는 경우 이러한 오류가 발생한다. 더보기
초기화가 'case' 레이블에 의해 생략되었습니다 switch-case의 case 문에서 변수를 선언한 경우에 오류가 발생한다. 각 case의 코드를 {}으로 묶어주면 해결된다. 더보기
이러한 피연산자와 일치하는 ">>" 연산자가 없습니다. 이러한 피연산자와 일치하는 ">>" 연산자가 없습니다. 피연산자 형식이 std::istream >> std::string입니다. 코드를 작성하다가, 위와 같은 오류 메시지를 확인하게 되었다. 위와 같은 오류가 발생하는 이유는 간단하다. string 입력하고 출력하는 구문이 모두 string 헤더파일에 들어있는데, 이를 include 해주지 않았기 때문이다. 따라서, 코드 맨 앞줄에 다음과 같은 코드를 추가로 작성해주면 된다. #include 더보기
이러한 피연산자와 일치하는 "==" 연산자가 없습니다. 이러한 피연산자와 일치하는 "==" 연산자가 없습니다. 피연산자 형식이 Point == Point 입니다. Point 클래스의 객체가 서로 같은지 비교하는 코드를 작성하기 위해서 if (p1 == p2); // p1과 p2의 객체는 모두 Point 클래스의 객체 라는 코드를 작성하였다. 하지만, 위와 같은 오류가 발생하는 것을 확인할 수 있었다. 이는 클래스에 대해서 연산자 중복이 되어있지 않았지 때문이다. 따라서, 객체를 ==을 사용하여 비교하기 위해서는 따로 연산자를 재정의 해주어야 한다. 더보기
예기치 않은 'int' 형식입니다. int a; int b; 컴파일러는 기본적으로 위와 같은 방식으로 변수 선언을 한다. int a, b; 위와 같은 방법으로도 선언이 가능하다. int a, int b; 하지만 위와 같은 코드는 인정하지 않기 때문에 컴파일러는 이를 오류 처리 한다. 더보기
항은 0개의 인수를 받아들이는 함수로 계산되지 않습니다. 변수의 이름과 함수의 이름이 동일한 경우 매개변수를 받아오는 부분에 있어서 컴파일러가 변수와 함수를 제대로 구분하지 못하기 때문에 컴파일 오류가 발생하는 것으로 보인다. 더보기
HEAP CORRUPTION DETECTED 오류 HEAP CORRUPTION DETECTED : after normal block CRT detected that the application wrote to memory after end of heap buffer new 등으로 동적할당을 받은 경우에 할당된 메모리를 초과하는 인덱스에 접근하려고 하는 경우 다음과 같은 오류가 발생한다. 더보기

반응형