前两天,给自个儿写的工程加个预编译头,没想到貌似简单的活就出错了。
以前自己都是建立工程的时候加好,自己也没太在意,也就这么过了,这次给旧工程加,想想也就手动添加了个xxx.h,然后在project properties里改了下设置 use procompiled header,但这样就错了,于是自己也懒的想,就去ogre的工程(ogremain)里对了一遍,看看自己的设置也对,写法上,include也都写在每个cpp前了,也没二到在.h文件里include预编译头。后来网上查查,突然发现忘记添加预编译头对应的cpp文件了。。。一加世界清静了。。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
好吧。。我是二了。。不过回头想想,ogre是怎么做到这一点的呢,ogremain工程里只有一个OgreStableHeader.h,而没有cpp,我对编译这些不太清楚,但依稀觉得precompiled这东西就是先生成一个obj文件包含了我想include的头,而一个obj文件对应一个cpp单元,而没有cpp应该就是没有这个obj所以导致错误,但ogre是怎么做到的呢?求大家解答。