谁能给我解释一下这种可以在 Y 类:private 中找到的“继承”?
class X
{
private: char c_;
public: X(char c) : c_(c){}
};
class Y
{
private: X x_; // What is this ?
public: Y(X x): x_(x){}
};
int main()
{
X m('a');
Y *test = new Y(m);
delete test;
return 0;
}
最佳答案
这不是继承,因为Y
不是从X
派生的。
这只是简单的封装。 X x
只是Y
的成员变量,和char c_
是X
的成员变量没什么区别。
关于C++:另一个类中的类作为类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44572369/