【发布时间】:2021-07-24 11:17:08
【问题描述】:
您好,我想要一个链式对象结构,在该类中,我有 2 个与我正在处理的类中的类相同的类类型的属性。喜欢:
class Base;
class Base
{
private:
Base * m_prev;
Base * m_next;
public:
Base (Base prev, Base next) {
m_prev = prev;
m_next = next;
}
void set_prev(Base *prev) ....
void set_next(Base *next) ....
...
}
当我尝试上述方法时,编译器告诉我我使用了未完成的类型,不知何故我明白了,但应该有办法解决它。
我一直是不同语言的程序员,例如(delpi/pascal/java/javascript 等),每个人都不一样,现在我正在尝试学习 C++,但我发现很难找到可以提供帮助的正确文档我出去。
我很确定有一个通用的解决方案,但我无法找到谷歌的正确问题。
有人可以解决这个问题吗,
编辑:在创建此帖子时,我忘记添加 2 行设置器(现在已添加到此请求中),并在我赶时间时提出了后续问题。
【问题讨论】:
-
我认为编译问题可能出在省略号中省略的代码中。有抽象方法吗? (顺便说一句属性 => 类成员)
-
我认为我的主要问题是 id 不允许正确设置 m_prev 和 m_next,我只是收到有关未完成类型或类似内容的错误消息。我认为这将通过波纹管的答案来解决,我将很快进行测试。
标签: c++ class oop properties