小编fan*_*mas的帖子

类成员是另一个类的实例

我想让一个类成员成为另一个类的实例.但我得到一个警告"警告C4458:声明'x'隐藏类成员"并且代码不起作用.

class Ca { int va = 5; public: Ca(); int getVa(void); }; int Ca::getVa(void) { return va; }; class Cb { Ca x; public: Cb(); int getCa(void); }; Cb::Cb(void) { Ca x; // instanciate Ca } int Cb::getCa(void) { return x.getVa(); } int main() { Cb cb; // instanciate Cb int i = cb.getCa(); cout << "va = " << i << endl; }
Run Code Online (Sandbox Code Playgroud)

我不明白这个警告,请有人解释一下吗?

c++

0
推荐指数
2
解决办法
858
查看次数

标签 统计

c++ ×1