CCArrayでAssertに引っかかっちまうんだけど。
CCArrayで以下のcreate関数を呼び出すとなぜかAssertが走ってしまう。
CCArray *stapleFood = CCArray::create(new CCString("米"), new CCString("麦"));
う~ん。なぜだ!!
以下の場所で止まっている。
void CCObject::retain(void) { CCAssert(m_uReference > 0, "reference count should greater than 0"); ++m_uReference; }
cocos2d-xのバグか?
いや、そんなはずはない。99.999999%は、最底辺の俺が悪いはず。
と、色々調べてみたところ、どうもこの引数の指定の仕方の場合、最後にNULLがいるんじゃないかと推論に達した。
ということで以下のように指定して無事解決!
CCArray *stapleFood = CCArray::create(new CCString("米"), new CCString("麦"), NULL);
しかし、cocos2d-xは、foolproofが甘い気がしますね。
ああ、ちなみにnew CCStringの生成は、メモリリークしていますので悪しからず。
本来は、CCString::create(“米”)とか使わないとだめかな?
ディスカッション
コメント一覧
まだ、コメントがありません