class X {
int i;
public:
X() { i = 0; }
void set(int ii) { i = ii; }
int read() const { return i; }
int permute() { return i = i * 47; }
};
以上是X类的定义
另一个 Y 类是
class Y : public X {
int i; // Different from X's i
public:
Y() { i = 0; }
int change() {
i = permute(); // Different name call
return i;
}
void set(int ii) {
i = ii;
X::set(ii); // Same-name function call
}
};
我怀疑X类也包含一个名为i的变量,它被Y类继承,但是Y类的i应该覆盖它,但是类(Y)的大小是8。
其次,对于线路
X::set(ii)
我们可以这样调用函数吗?是否为任何对象调用了 X 类的这个函数?
非常感谢提前