C ++:类范围和定义顺序

时间:2014-07-02 06:44:58

标签: c++ class scope

我无法解决这个问题。本质上,我有一个节点,其输入和输出端口连接到其他节点。端口具有不同的属性,我想在一个类中组合在一起。我现在的代码是

class Node
{
 private:
    std::vector<Port*> m_Input; 
    std::vector<Port*> m_Output; 
...
};

class Port
{
 private:
    Node* m_Connection;
    std::string m_PortName;
 ...
}

`

错误是在尝试编译Port.cpp时,Node的包含文件表示未声明Port。有没有办法全局声明该类,以便可以通过端口查看它。像在顶部有一个功能定义的东西。感谢

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

class Port;

class Node
{
 private:
    std::vector<Port*> m_Input; 
    std::vector<Port*> m_Output; 
...
};

class Port
{
 private:
    Node* m_Connection;
    std::string m_PortName;
 ...
}