c++ - C++ 中以 Listclass-parent 作为成员的 Itemclass

标签 c++ class self-reference

我知道,标题令人困惑。但我不知道任何其他方式来论坛化它。问题如下:

我有两个类(class)。一个是Listclass,另一个是Itemclass。所以 Listclass 有一个 Itemobjects 的列表 (std::vector)。但现在我想在 itemclass 中使用父成员,它引用存储它的 Listclass(或正确的对象)。

但是 C++ 禁止这样的事情,因为它只允许已经解析类的成员。我过去主要使用 Java,这不是问题。

那么有没有可能做这样的事情呢?

最佳答案

您需要可用于不完整类型的指针或引用。

struct list; // <-- forward declaration

struct item
{
    item(list &list_) : _list(list_) {}

    list &_list;
};

struct list
{
    std::vector <item> items;
};

关于c++ - C++ 中以 Listclass-parent 作为成员的 Itemclass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21075615/

相关文章:

javascript - 如何在 Node 模块中构造类?

java - hibernate中的自引用实体会导致StackOverflowErrors

c++ - 将成员函数添加到绑定(bind)到 Lua 的 C++ 类

class - 带 `min` 的类型类?

python - 搜索没有 html 标签的漂亮的 soup 输出

c - 是否可以在 C 中模拟对象方法?

javascript - 自移除物体

c++ - 确保主线程单独运行在它自己的核心上

c++ - Win32 C/C++ 检查同一程序的两个实例是否使用相同的参数

c++ - 将基类的引用传递给另一个函数