vc的增量编译问题
2009-11-27 03:08
239 查看
vc的增量编译真是什么情况都会发生,往往各种意想不到的情况都是尤其引起的,今天下午还碰到一个极端搞笑的。
我在类里设置了一个map的成员变量,在类的构造函数中给他初始化并插入了不少元素,但是在实际的函数中对其调用的时候,却显示map为空,可是map显然不可能为空啊,没有任何操作会导致其为空,甚至通过在及时窗口中打this来查看其内存地址,在具体函数调用到时也查看了内存地址,都没有错,只是里面的内容不见了,由于地址是正确的,所以map并没有被delete掉,而是被“clear”了,但是问题是,如何会被clear掉呢?
百思不得其解,最后还是想到像这类问题,估计还是增量编译的问题,重编译一下,果然ok了。
记得还有一次,我写了一个子类,实现了积累的虚函数,在调用的时候,很显然应该调用这个子类的函数,因为子类已经重载了虚函数,可是程序的实际结果是,调用的基类的虚函数,通过调试发现,对象的虚指针表中的项指的正是基类的函数,唉,真是搞笑,没法了,只能重编,结果,当然又是好的了。
类似的情况还有好几次,现在让我对vc的增量编译实在提不起多少劲,本来其他的bug已经够多了,intelisence的bug一页纸根本写不下,可是像这种编译器错误,真的不应该发生太多才对啊....
我在类里设置了一个map的成员变量,在类的构造函数中给他初始化并插入了不少元素,但是在实际的函数中对其调用的时候,却显示map为空,可是map显然不可能为空啊,没有任何操作会导致其为空,甚至通过在及时窗口中打this来查看其内存地址,在具体函数调用到时也查看了内存地址,都没有错,只是里面的内容不见了,由于地址是正确的,所以map并没有被delete掉,而是被“clear”了,但是问题是,如何会被clear掉呢?
百思不得其解,最后还是想到像这类问题,估计还是增量编译的问题,重编译一下,果然ok了。
记得还有一次,我写了一个子类,实现了积累的虚函数,在调用的时候,很显然应该调用这个子类的函数,因为子类已经重载了虚函数,可是程序的实际结果是,调用的基类的虚函数,通过调试发现,对象的虚指针表中的项指的正是基类的函数,唉,真是搞笑,没法了,只能重编,结果,当然又是好的了。
类似的情况还有好几次,现在让我对vc的增量编译实在提不起多少劲,本来其他的bug已经够多了,intelisence的bug一页纸根本写不下,可是像这种编译器错误,真的不应该发生太多才对啊....
相关文章推荐
- X264 在VC中编译问题补充-日志!
- VC下 Runtime 版本不同原因引起的一个编译问题案例
- VC2010下编译OpenCV3.2问题记录
- GNU flex unistd.h在VC下的编译问题
- VC7 编译最新的 x264最的问题
- 关于 VC 2005编译DCMTK的问题
- vc++6源码在VC2010中编译提示iostream.h库找不到问题的解决办法
- vc++.net编译问题
- vc2010预编译问题
- VC编译OpenSSL的一些问题记录
- 用VC时编译时的问题:cannot open Debug/test71.exe for writing
- VC编译时的一些问题
- VC++编译JSON源码常遇到的问题。
- BAS系统 升级至VC2008 编译问题
- 解决typedef unsigned long long DDWORD; 在VC下编译不过问题。
- 对于vs2008下MFC的编译或者说vc6到vs2008的移植性问题
- vc6 和 vc8 同时编译stlport 5.1.4 引起的问题
- VC2005下编译DirectX9.0的SDK问题
- vc 编译遇到问题
- VC++编译后运行出错问题