gpt4 book ai didi

c++ - 如何解析依赖类?

转载 作者:行者123 更新时间:2023-11-30 02:11:09 28 4
gpt4 key购买 nike

我有两个相互依赖的类。我以前解决过这个问题,但我一辈子都记不起如何解决这个问题。我的简化代码是这样的:

struct MenuOption{
string Text;
int Choice;
bool UseSubMenu;
Menu SubMenu;
};

class Menu{
public:
Menu(MenuOption optionlist[],int optioncount);
};

最佳答案

  • 使用前置声明

即:

// Forward declaration to assure A of B's existence.
class B;

class A { // uses B
B* b;
};

class B { // uses A
A* a;
};
  • 使用指针而不是对象实例:因为编译器需要知道要为类的成员分配多少空间。因此,拥有一个对象实例是行不通的,因为编译器在没有看到其类的完整声明的情况下不知道它的大小。然而,指针都具有相同的大小,编译器无需查看任何额外内容即可知道这一点。

关于c++ - 如何解析依赖类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3802334/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com