2015-04-23 86 views
0

似乎Coctring在Cocos2d-x v3.5中已棄用。我們應該用什麼來代替?另外,棄用的原因是什麼?CCString在Cocos2D-x中已棄用

+1

[Value](http://www.cocos2d-x.org/reference/native-cpp/V3.5/dc/dd1/classcocos2d_1_1_value.html)是可以用作字符串等容器的類型。但我不知道這種棄用的任何特定原因 – Nadarian

回答

5

簡短的回答:改爲使用std :: string。

整個代碼庫正朝着使用標準庫(STL,std :: namespace)以及新C++ 11特性的地方轉變。

您可以在任何使用CCArray和CCDictionary的地方繼續使用CCString。當然,這些都是不推薦的,所以你最終應該轉向使用std :: string。

ValueMap和ValueVector是CCArray和CCDictionary的替代品,它們基於STL std :: map和std :: vector幷包含Value對象。值可以容納std :: string,int,float,bool,以及ValueMap/ValueVector以允許嵌套容器。

+0

爲什麼CCImage也被棄用? – southerton

+3

改爲使用圖像。從本質上講,大多數類(或者也許都是3.8)都將CC前綴刪除,而將它們置於cocos2d :: namespace層次結構中。 有關所有這些更改,請參閱已棄用/ CCDeprecated.h。 –

+0

使用std :: string而不是CCString很好。但是關於在CCImage中刪除CC *以及所有其他以前將要用到的CC類的話題,我只是覺得很難在需要的時候找到我需要的cocos類。我是唯一使用代碼完成的人嗎?那麼,沒有意義開始長時間的討論 - 我可以像以下那樣處理:-)。但FWIW,至少他們可以將這些類重新命名爲CXImage等其他類。 – Jonny

0

如果您希望將您的應用程序從2.x升級到3.x. 改用__String。

否則,使用std :: string作爲上面的答案。