很重要的结论:
cocos2d-x
你可以在进入CCSCene 之前进行创建Sprite
但是 【删除sprite 对象】 必须在退出CCScene 之前删除
否则删除 会导致CCTexture2D::~CCTexture2D() {
glDeleteTextures(1, &m_uName); // CRASH !!!
}
scheduleUpdate 为对 target 的 retainCount +1
CCCallfun 也会对target的 retainCount +1
CCSpriteBatchNode 指定texture 后,下面的Sprite 对象 的texture 必须为batchnode所指的texture.
bug on cocos2d-x
ccsequnce::create(ccaction ,....); never use this function.
schedule_selector 的select函数 的参数 一定要匹配
C++:
1.模板的分离编译问题~
2.父类的析构函数要加virtual .以防无法调用到子类的析构函数 。
3.取消提示 > g:\ip\dev\iphone dev\cocos2d\planefps\classes\entity\enemy\vehiclegroup.h(55): 编译类 模板 成员函数“VehicleGroup<T> *VehicleGroup<T>::buildGroup(Path *,Vector2D,int,float)”时
1> with
1> [
1> T=TTMyEnemy
1> ]
1> g:\ip\dev\iphone dev\cocos2d\planefps\classes\entity\enemy\enemygroupbuilder.h(15): 参见对正在编译的类 模板 实例化“VehicleGroup<T>”的引用
1> with
1> [
1> T=TTMyEnemy
1> ]
将调用模板方法的地方放入cpp文件 里面
使用 C++拷贝函数 原型模式
/* C++拷贝函数 不会自动 调用基类的拷贝函数 ,而且基类的拷贝函数要重写才能调用。 */
调用频繁的函数 ,尽量写成 inline 函数 。避免了频繁的跳转,出入践
static 在ios 上自动析构????
cocos2d-x
你可以在进入CCSCene 之前进行创建Sprite
但是 【删除sprite 对象】 必须在退出CCScene 之前删除
否则删除 会导致CCTexture2D::~CCTexture2D() {
glDeleteTextures(1, &m_uName); // CRASH !!!
}
scheduleUpdate 为对 target 的 retainCount +1
CCCallfun 也会对target的 retainCount +1
CCSpriteBatchNode 指定texture 后,下面的Sprite 对象 的texture 必须为batchnode所指的texture.
bug on cocos2d-x
ccsequnce::create(ccaction ,....); never use this function.
schedule_selector 的select函数 的参数 一定要匹配
C++:
1.模板的分离编译问题~
2.父类的析构函数要加virtual .以防无法调用到子类的析构函数 。
3.取消提示 > g:\ip\dev\iphone dev\cocos2d\planefps\classes\entity\enemy\vehiclegroup.h(55): 编译类 模板 成员函数“VehicleGroup<T> *VehicleGroup<T>::buildGroup(Path *,Vector2D,int,float)”时
1> with
1> [
1> T=TTMyEnemy
1> ]
1> g:\ip\dev\iphone dev\cocos2d\planefps\classes\entity\enemy\enemygroupbuilder.h(15): 参见对正在编译的类 模板 实例化“VehicleGroup<T>”的引用
1> with
1> [
1> T=TTMyEnemy
1> ]
将调用模板方法的地方放入cpp文件 里面
使用 C++拷贝函数 原型模式
/* C++拷贝函数 不会自动 调用基类的拷贝函数 ,而且基类的拷贝函数要重写才能调用。 */
调用频繁的函数 ,尽量写成 inline 函数 。避免了频繁的跳转,出入践
static 在ios 上自动析构????