一些小小的经验

1. 定义了变量尽量赋初值,例如:
BYTE *pDataBuf;
如果这里不赋初值NULL的话,pDataBuf不一定为NULL;
应该定义 BYTE *pDataBuf = NULL。
保持一个好的习惯,定义变量时当即初始化。

2. 利用fopen打开文件时,最好是用try……catch……避免异常发生;
3. 写文件时,完成文件的写操作后一定要调用fclose,否则文件还有一部分内容保存在读写的缓冲区中;
4. wcscmp是区分大小写的。
5. 编写的服务不能启动,很可能是缺少什么dll或者dll不匹配造成的;
6. Wcslen(wchar *)所返回的并不是所占用的内存空间的大小,而只是数据的长度。
7. 结构体按字节对齐一定要统一,不要有的是对齐的,而有的却不对齐。
8. 一个.cpp文件中,如果该文件中的函数只是在内部调用,则应该限制函数的作用范围,在函数的定义时加上static修饰符。
9. VC对话框关闭时,既响应OnCancel又响应OnClose事件,所以如果关闭的时候需要释放内存等操作时,一定要防止重复,否则可能会造成释放已经释放的内存,或者是访问已经被释放的内存等错误
10.程序遇到运行时异常
Windows has triggered a breakpoint in MainD.exe. This may be due to a corruption of the heap, and indicates a bug in Agistment Utility.exe or any of the DLLs it has loaded. The output window may have more diagnostic information...
造成的原因可能为:
    [1]访问已经被释放的内存; [2]再次释放已经被释放的内存。
11. unresolved external symbol __imp__FindWindowW@8 referenced in function _wmain
这种错误通常是由于缺少对某个库的静态链接。 比如此问题,缺少对user32.lib的引用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值