在C++中Private和Protected的区别(带例子)
Protected
Protected访问修饰符和私有访问修饰符类似,区别在于,声明为Protected的类成员无法在类外部访问,但是它们可以被该类的任何子类(派生类)访问。
示例:
输出:
Private
声明为private的类成员只能被类内部的函数访问。任何对象或函数都不允许直接访问它们。只有成员函数或友元函数才被允许访问类的私有数据成员。
示例:
输出:
Private和Protected的区别
Private | Protected |
---|---|
声明为private的类成员只能被类内部的函数访问。 | 受保护的访问修饰符和私有访问修饰符类似。 |
私有成员保留程序中的实现细节。 | 受保护的成员增强了派生类的访问权限。 |
只有成员函数或友元函数才被允许访问类的私有数据成员。 | 声明为Protected的类成员无法在类外部访问,但是它们可以被该类的任何子类(派生类)访问。 |
私有成员在类中不会被继承。 | 受保护的成员在类中可以被继承。 |