사용자 정의 클래스에 대해 멤버 함수가 정의되지는 않았지만 사용되었습니다. 따라서 다음과 같은 코드가 있습니다.C++ (생성자, 소멸자, 연산자 =, 복사 생성자)의 클래스의 기본 멤버 함수에 문제가 발생했습니다. (기본 ctor, dtor, copy ctor)
class AA
{
};
void main()
{
AA a;
AA b(a);
a = b;
}
이 코드는 정상적으로 작동합니다. 컴파일러 오류가 없다는 뜻입니다. 그러나 다음 코드는 ....
class AA
{
int member1;
int member2;
};
이 코드는 변수 "a"가 iniltialized되지 않고 사용되기 때문에 런타임 오류가 발생합니다 !!!
내 질문은 이것입니다 : 우리가 int를 인스턴스화 할 때, 그것은 가치가 있습니다. 그렇다면 왜 기본 생성자가 작동하지 않고이 두 정수를 사용하여 변수 "a"를 초기화합니까?
편집 : 플랫폼 : Windows Vista, 컴파일러 : Visual Studio 2008 컴파일러; 플래그 : 기본값
어떤 종류의 런타임 오류가 발생합니까? – Glen
두 번 째 작성 : 변수 "a"가 iniltialized없이 사용됩니다 !!! – Narek
컴파일러에서 "/ WX"(경고로 경고 처리) 속성을 설정할 수 있습니까? –