0
제목에서 정확하게 말합니다. 나는 MSVC++ 2008 익스프레스를 사용하고 있으며, 내 클래스 생성자는 릴리즈 모드에서 컴파일 될 때 절대로 실행되지 않습니다. 그것은 디버그 모드에서 작동합니다.클래스 생성자가 릴리스 모드에서 실행되지 않았습니다.
내가 좋아하는 뭔가를하고있는 중이 야 : DoIt();
트리거에
ClassTest test;
test.DoIt();
중단 점을, 그러나 ClassTest::ClassTest();
에 중단하지 않습니다.
이것은 맞지만 int를 선언하고 초기화 한 다음 사용하지 않으면 여전히 최적화되어 중단 점이 발생하지 않을 수 있습니다. 컴파일러가 최적화 할 수 없도록 외부 부작용이있는 명령문을 포함하고자합니다. –
나는 바보 같았다. 생성자가 실행 중이다. 어떤 이유로 MAKEWORD를 사용하는 대신 wsa.wVersion을 WSAStartup의 첫 번째 매개 변수로 실수로 제공했습니다. 이는 디버그 모드에서 작동하는 것으로 보입니다. –
감사합니다 매트 - 좋은 지적입니다. 변수를 초기화하는 것은 이론을 테스트하는 데 가장 먼저 떠오른 것이지만 실제로 변수를 사용하는 것도 매우 중요합니다. 나는 대답을 업데이트 할 것이다. – LeopardSkinPillBoxHat