2013-01-10 4 views
1

쉬운 방법이 있나요?#pragma warning (기본값 : all)

#pragma warning(default: all) 

이는 유효하지 않습니다. all 대신 특정 경고 번호를 부여 할 수 있으며 그 경고를 기본값으로 복원하지만, 모두 경고를 기본값으로 복원하려고합니다. 나는 모든 경고의 긴 목록을 작성하고 싶지 않다!

내 목표는 코드가 깔끔하게 컴파일되도록하고 다른 곳에서는 사용할 수없는 코드 자체의 경고를 실수로 숨기지 않는 것입니다.

다른 프로그래머가 포함하지만 제어하지 않는 헤더 (미리 컴파일 된 헤더 포함) 및 프로젝트 설정이나 명령 줄에서 경고를 사용하지 않도록 설정 한 거대한 코드베이스에 있다고 가정합니다.

답변

1

http://msdn.microsoft.com/en-us/library/2c8f766e(v=vs.110).aspx

나는 이미 위의 참조를 보일 수 있습니다 두려워 해요.

#pragma warning(push) // The very beginning of your code 
#include <...> 
#pragma warning(pop) 

// Your code 
... 

밀어 당신이 그 순간에 모든 경고 상태를 저장할 수 있으며, 팝업이 원래 상태로 복원 :하지만, 내 제안은 경고 프라그의 밀어 넣기/팝업 기능을 사용하고 있습니다.

+0

스왑 팝업 및 // OP가 요청하는 것을 얻기위한 코드. –

+0

실수를 고쳐 주셔서 감사합니다! – minjang

+0

나는 이것이 일반적으로 작동 할 수 있다고 생각하지 않는다; 예를 들어 미리 컴파일 된 헤더에서 경고가 비활성화 된 경우. 적어도 Visual C++에는 PCH가 포함되기 전에'#pragma warning (push)'를 넣을 방법이 없다. 나는 그 정보를 질문에 추가 할 것이다. –