본문 바로가기
MFC

Disable optimization option at some function in Visual Studio

by leo21c 2015. 7. 10.

Disable optimization option at some function in Visual Studio

개발을 하다보면 Debug 모드에서는 잘 작동하는 것이 Release에서는 작동이 안되는 경우가 있다.
Visual Studio 컴파일 옵션을 보면 Optimization이 있다. 
이것을 사용하면 확실히 실행파일에 속도 향상을 확인 할 수 있다.
하지만 
optimization이 기존 소스를 수정하기 때문에 원하는 방향을 함수나 코드가 작동하지 않는 경우가 발생한다.
QT 개발로 C++ Builder만 사용하다가 Visual Studio를 사용하면서 이 부분을 몰라 고생을 했다.

특정 함수나 영역에 최적화가 되지 않게 처리하기 위한 방법이 있다.
함수 밖, 위에 off를 하고 함수 끝, 밖에 on을 해주면 된다.

#pragma optimize( "", off )
.
.
.
#pragma optimize( "", on ) 

아래 MSDN을 확인하면 자세한 설명이 되어져 있다.
이렇게 처리해서 프로그램이 잘 작동하는 것을 확인했다.

https://msdn.microsoft.com/en-us/library/chh3fb0k.aspx