1. 如何避免内存泄漏,如何查找内存泄漏。
答:
每开辟一片内存的时候要时刻记着对它的释放,防御型编程,断言,异常处理,
windows下查看任务管理器,查看进程,检查代码块
Mac下用Instrument工具来检测内存使用状况
2. 列举Cocos2dx内常用设计模式,并举例说明。
答:
工厂模式:
工厂方法是程序设计中一个经典的设计模式,指的是基类中只定义创建对象的接口,将实际的实现推迟到子类中。在这里,我们将它稍加推广,泛指一切生成并返回一个对象的静态函数
单例模式:Director,精灵帧缓存,Audio音频管理,均为单例模式,实现为封装一个私有静态变量,构造函数被设计成私有的,并提供一个公有的静态获取实例函数(为程序健壮性考虑,还需要考虑防止被复制,“=”的重载,多线程并发访问问题处理)
观察者模式:当我们想要监听一个动作,但是不能老是盯在这一件事情上,还有其他时间需要我们监听的时候就可以用到观察者模式。cocos2dx中封装为
NotificationCen
ter
就是被观察者含有一个数组,里边存放了所有观察者的引用,在被观察者的状态发生改变的时候,通过调用观察者的函数来通知观察者,实现了信息的传递。
委托设计模式: