好多同窗都要求干货分享,嗯,那我就直接跳过大量的基础介绍啥的,直接从重点讲起,若是有不明白的,请自行google吧,尽量的我也会给出相关的连接,毕竟这个系列不是从零开始的,因此,请见谅。程序员
从哪里开始,嗯,先从调试器入手吧。cocos2dx是一个跨平台的游戏引擎,主要的开发工具支持win32/mac,因而对于调试器咱们选择的余地就大了许多,visual studio,xcode,也能够用eclipse 或者adt下直接用gdb。windows
就我我的而言,我仍是喜欢visual studio,稳定、高效、快速、友好,甚至于在放弃了window转投mac以后,为了能使用vs来调试特地装了一个windows的虚拟机。xcode
下面的文章都是围绕着visual studio展开的,固然运行在win32上。数据结构
对于C++程序员来讲,内存管理绝对是最重要的一关,各类奇怪的问题都和内存有关。哪怕是多年的老手,一不留意,也会出各类问题。要少出内存问题,一个是写出高质量的代码,另外的就是能快速定位到问题的代码。好,接下来就是干货时间了,……eclipse
首先,天然是好好学习下C++,特别是指针相关的内容,知道了为何才能少犯错。推荐的是Stephen Prata的《C++ Primer plus》,经典教材,你值得拥有。
提示:
1.《C++ Primer plus》百度百科
2.电子版本自行百度ide
其次,写代码的时候,尽可能使用STL的代码,不要轻易尝试本身去实现经常使用的数据结构,一来是容易出错,二来你写的确定没有STL的效率高。站在巨人肩上才是最应该作的。若是你对C++足够了解的话,推荐使用boost或者C11里面的智能指针,shared_ptr和weak_ptr能避免大量的内存问题(这个后面提及C11,再详细说明)。函数
好了,写了代码之后,接下来就是调试了。内存出错了,捉鸡啊,怎么办?找大牛仍是死扛呢?这时候你就须要一些特别的工具了。工具
首先,天然是vld了。vld全称Visual Leak Detector,目前最新版本2.3.0,官网地址http://vld.codeplex.com/post
vld的好处就是简单,几乎不须要作任何修改,装完了,只要添加一个头文件,就能够用了。学习
仅须要把头文件编译进工程便可,最好加在main.cpp里(就是有winmain函数的那个文件)
另外,多个dll,须要每一个都添加。好比libCocos2d,libCocosDenshion须要分别添加
在程序退出以后,就能看到内存泄露的信息了。
双击堆栈信息,能够很直接跳转函数,方便无比。
好了,说了一堆好处,接下来就是有待改进的地方了:
内存检测须要在程序退出之后,检查起来比较麻烦
虚拟机下,使用不太正常。