我有4个档案,

HomeScene.h
HomeScene.cpp
Options.h
Options.cpp


两个*.h文件都包含另一个*.h
现在,我试图在Options.h中继承HomeScene.h

class OptionScene : public cocos2d::CCLayerColor,HomeScene


上一行给出了很多错误。

class OptionScene : public cocos2d::CCLayerColor


上面的行没有错误

我的static bool var;中有一个HomeScene.h
我正尝试直接在我的选择场景中使用。

最佳答案

为什么需要在Options.h中包含HomeScene.h?如果OptionScene是从HomeScene派生的类型,那么我不知道您为什么需要这样做。

如果只需要声明对Options.h中声明的类型的指针/引用,则可以使用正向声明。

选项.h

#include "HomeScene.h"
class OptionScene
{
    // ...
};


HomeScene.h

class OptionScene; // forward declaration

class HomeScene
{
    OptionScene* o;
};


如果这是您的问题,那么此问题将帮助您:When can I use a forward declaration?

关于c++ - 如何继承#include类?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9111538/

10-12 04:05