最近都用lua,突然换成C++写一个测试项目。
结果第一步就悲剧了。需要做一个map,来存sprite。就随便找了个unordered map来用。
unordered_map<int, Sprite> curTiles;
unordered_map<int, Sprite> newTiles;
然后发现各种编不过~~~这里还有一个很神奇的事情,在mac的target下面可以编过,ios的怎么都编译不过。错误是提示在unordered map的565行。
最后发现应该这么写就对了:
unordered_map<int, Sprite*> curTiles;
unordered_map<int, Sprite*> newTiles;
先不说cocos2dx里面所有的对象都是用指针操作的。但是为毛之前那样会错呢?
因为sprite的构造函数是protect的!!!
那个神奇的问题空了再看