cocos2d x3 0之記憶體拷貝

2021-08-27 15:28:30 字數 579 閱讀 4851

3.0模仿object-c的痕跡少了,看上去更c++了,這是官方說滴。

object減少了那麼多複雜的功能,我認為還得拆分。不過cocos2d-x正朝著這個方向努力。

比如原來的object:public copying就被乾掉了。並不是一切東西我們都希望可拷貝的。

現在換成了組合的模式,比如:

class cc_dll array : public object, public clonable

clonable是個純虛類:

/** inte***ce that defines how to clone an object */

class cc_dll clonable

; /** returns a copy of the object.

@deprecated use clone() instead

*/cc_deprecated_attribute object* copy() const

}else

}return ret;

}}

就是乙個深拷貝。額,沒什麼再說的了。

cocos2d x 3 0 記憶體管理

參考文章 cocos2d x採用了引用計數機制來進行記憶體管理。每個物件都有乙個用來控制生命週期的引用計數器。在物件通過建構函式建立時,該物件的引用計數值就被賦值為1,表示物件是由建立者所引用。因為如scene layer等類都是繼承自ref類,而c 中,乙個類的建構函式總是會先呼叫父類的建構函式,...

cocos2d x3 0之object記憶體管理

看object類的實現就行了。首先映入眼簾的是它們 protected count of references unsigned int reference count of autorelease unsigned int autoreleasecount 然後我們先看下 reference都在 ...

cocos2d x 3 0 編譯問題

3.0最主要的問題是它引進了c 11 所有ndk版本必須是r8e版本以上,即使你已經有這些已經準備好,還要注意一點是ndk編譯的時候預設採用ndk toolchain version 4.6的形式去編譯,這個時候就會出現 error thread in namespace std does not ...