class X
{
private:
Y *a;
};
class Y
{
private:
X b;
};
我是C++新手,希望懂的人能为我揭开开迷雾,醍醐灌顶。
...全文
18115打赏收藏
散分了,散分了
今天在看《C++ primer e5》的时候,看到地250页的练习题。 练习7.3.3:定义一对类X和Y,其中X包含一个指向Y的指针,而Y包含一个类型为X的对象。 我是这么定义的,完了之后我就觉得是不是有矛盾啊,这个编译器怎么编译啊,编译其中任何一个都会出现为声明类型啊,构造顺序也有矛盾啊。 class X { private: Y *a; }; class Y { private: X b; }; 我是C++新手,希望懂的人能为我揭开开迷雾,醍醐灌顶。