所以我在名为mainMenu的文件中包含以下代码:

[[CCDirector sharedDirector] runWithScene:[GameLayer scene]];


我有#import "GameLayer.h"。 GameLayer在.h头文件中包含cocos2d,box2d,GLES-Render。

因此,每当我在mainMenu文件(.m)中包含GameLayer并尝试构建应用程序时,它都不会返回关于b2d(b2settings,b2math等)的大约360个错误。有人知道我在做什么错吗?

注意mainMenu代码在不包含GameLayer的情况下也可以正常工作,而没有mainMenu的GameLayer也是如此!

最佳答案

将主菜单的扩展名更改为.mm。这使其成为一个Objective-C ++文件,这是必需的,因为box2d在C ++中。

关于objective-c - 在Box2D的Cocos2D项目中包含GameLayer.h时编译错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7629243/

10-10 12:39