我所遇见的坑(二)

起因

前些天,查找一个ActiveX项目的问题。问题比较难定位,并且源码不怎么易读。表现:在绝大多数电脑上运行没有问题,但在个别电脑上100%会出现IE崩溃,并且在一些其他电脑上操作多次也会出现IE崩溃。经过多番调试,总算找到了原因。原来罪魁祸首是写文件日志 。

阅读更多

我所遇见的坑(一)

前言

编程多了,就会遇见坑。这些坑可能有自己的不小心,也有可能第三方工具的不小心。本篇记录自己所遇到的关于const的坑,事情起因源于我拷贝一个函数定义,父类函数没有const修饰,子类有const修饰,当我想new一个对象的时候,始终编译不过去。类似如下代码:

1
2
3
4
5
6
7
8
class father
{
virtual bool HasCapture() = 0;
};
class children
{
virtual bool HasCapture() const { return true;}
};

真正的代码要比这个复杂,实例化是宏来调用的,所以我看了老半天,还是找不到哪里出错了。因为用的codeblock,编译过程中输出的都是英文,没有仔细看。后来看了VS编译,发现有提示哪个虚函数没有实现,这才想到看codeblock编译输出的结果。(这是一个惨痛的教训

阅读更多