记录一:
公有(public)成员:类内部、子类、类外部、友元函数都可以访问。
私有(private)成员:仅类内部、友元函数可访问。
保护(protected)成员:类内部、子类、友元函数可访问。
补充:在类里面不写是什么类型,默认是 private 的。
记录二:
类继承中的特点:
有public, protected, private三种继承方式,它们相应地改变了基类成员的访问属性,即是子类继承父类的成员,但是这些父类的成员在子类中的访问属性被改变了(根据继承方式)。
1.public 继承:基类 public 成员,protected 成员,private 成员的访问属性在派生类中分别变成:public, protected, private
2.protected 继承:基类 public 成员,protected 成员,private 成员的访问属性在派生类中分别变成:protected, protected, private
3.private 继承:基类 public 成员,protected 成员,private 成员的访问属性在派生类中分别变成:private, private, private
但无论哪种继承方式,上面两点都没有改变:
1.private 成员只能被本类成员(类内)和友元访问,不能被派生类访问;
2.protected 成员可以被派生类访问。
再看一个例子:
//结果
10 //b.a
10 //b.fun2();
1
2
4 //fun();
1
2
3
完毕。