本文的编译环境为Windows7_SP1 + VS2010_SP1 :)
当编译Ogre1.8.1的源码时,会出现大量的warning,如图:
虽然没有太大影响,但是程序员都希望自己的程序是没有warning的,同时如果存在大量warning,那么当自己编写代码出现warning时,也难以发现。其实去除方法很简单,只需要使用#pragma指令就可以了:
1 #pragma warning( push ) 2 #pragma warning( disable: 4251 ) 3 #pragma warning( disable: 4275 ) 4 #pragma warning( push ) 5 #pragma warning( push ) 6 #pragma warning( push ) 7 #include <Ogre.h> 8 #pragma warning( pop )
因为在Ogre的部分源码文件中,会有#pragma warning( pop )指令,因此需要#pragma warning( push )来匹配它,这就是为什么在这里加了多条#pragma warning( push )指令的原因。然后,编译就完美完成了 :)