【发布时间】:2020-08-05 21:08:27
【问题描述】:
假设有 A、B 和 C 三个类,它们的连接方式是 A 对 B 有一个对象实例,B 对 C 有一个对象实例(A->B->C)。 每个类都有私有数据成员、getter 和 setter。
如何从 C 类到 A 类获取值?
代码示例:
class C{
private:
int q = 3;
int w = 2;
int e = 1;
public:
... setters and getters ...
}
class B{
private:
C objC;
int x;
int y;
public:
... setters and getters ...
}
class A{
private:
B objB;
int rows;
int cols;
public:
Board{
if(objB.objC.getValOfQ() > 0){ //this is not working because objC is a private data member of class B
....
}
}
}
我应该在 B 类中编写一个 getter 函数来访问 objC 或类似的东西吗?如何为对象创建公共 getter?
这是错误:
'objC' is a private member of 'B'
【问题讨论】:
-
请发送minimal reproducible example 并显示您收到的实际编译器错误消息。
-
错误信息是:'objC' is a private member of 'B'
-
那么为
objC创建一个公共getter? -
那么请将该信息添加到问题中,而不是作为评论。
-
如何为对象创建公共吸气剂?抱歉,我是 C++ 新手