【发布时间】:2018-01-05 06:14:10
【问题描述】:
class base {
public:
int getC() {return c;}
int a;
protected:
int b;
private:
int c;
}
class derived: public base {
public:
int getD() {return d;}
private:
int d;
}
现在,派生类有公共成员:
int getC() {return c;}
int getD() {return d;}
int a;
受保护的成员:
int b;
私人会员:
int d;
我无法确认int c; 是否是派生类的私有成员。很明显class derived的任何新成员函数都不能访问c。因此,如果c 是class derived 的私有成员,则class derived 的成员函数应该有权访问c。那么c是一个什么样的类派生成员呢?
【问题讨论】:
-
c不是derived的成员,它是base的成员,就像a和b一样。 -
所以,
a是derived的公共成员?b是derived?@n.m. 的受保护成员。 -
他们不是
derived的成员。
标签: c++ inheritance