编程易犯毛病总结
由于程序写好,总会有bug,这些bug很大程序上来自于编写的方法和习惯有关。
本文会长期追加,我自己发现一条就会记一条。
1.是数值就要用数值型变量,不要用字符串,不要以为读文件读来的是字符串,以后就用字符串变量保存
2.检测子字符串是否存在。stl string.find("aaaa") != string::npos不能写成string.find("aaaa") >= 0
3.常用char[]存储一些字符串至少要256。不要感觉短就随手 char[60]这样的程序在其他环境下经常会发生一想不到的问题
4.变量尽可能放到最后,函数尽可能放到最上面
5.类成员变量一定要在构造函数里初始化。如果程序在debug没问题而在release崩溃,有一种原因就是累成员没有初始化的原因
6.sprintf printf _vstprintf_s 这些函数中的 %d ,后面一定是跟32位数,如果是64位
7.不要以为栈的容量无限,所以千万不要 char szFileList[1024000]
8.vsprintf_s此类函数,会把你前面清零的buffer会弄的不为0
9.假如你要写一个类的GetID()函数,为保证任何时候都可以得到这个ID,则一定不要让这个GetID()内部生成。而是声明一个类成员变量m_id,在类的构造函数里初始它。GetID 用来返回m_id。
本博客注有“转”字样的为转载文章,其余为本人原创文章,转载请务必注明出处或保存此段。c++/lua/windows逆向交流群:69148232