c++难以发现的bug(有趣)

这些bug可能够你喝一壶的。

1、被断言(assert)包含的代码

  常发生在切换到release版本时,执行结果乖乖的,最终查找结果是assert括号里的代码在release下是不执行的。

  发现:跟踪,执行不到代码

2、对象成员数据错乱了

  基本是成员内存上面的其他成员删除时越界了。class foo{int arr[2];int val;}这种情况如果arr[2]=3;那么val的值会被改变。

  发现:内存断点

3、内存泄漏

  这些内存挣脱了缰绳。

  发现:#include "crtdbg.h" 并且重载new,参考微软文档。linux下建议支持windows平台,可以利用强大的开发工具。

总结

以上所述是小编给大家介绍的c++难以发现的bug(有趣),希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: