protected修饰符存在的意义?

来源:百度知道 编辑:UC知道 时间:2024/06/23 01:22:39
忘了
是不是跟友元和继承有关系?
可以举个例子吗?

在类继承中有用,子类能调用父类protected 申明的变量或函数

友元是一种定义在类外部的普通函数,但它需要在类体内进行说明,为了与该类的成员函数加以区别,在说明时前面加以关键字friend。友元不是成员函数,但是它可以访问类中的私有成员。友元的作用在于提高程序的运行效率,但是,它破坏了类的封装性和隐藏性,使得非成员函数可以访问类的私有成员。
请参考http://baike.baidu.com/view/1066547.html?wtp=tt

这是C++设置的访问类中成员权限的限制符
最好拿public和private来一起比较

在类外如果想使用类中的成员,只能直接使用public类型的,protected和private都是不能访问的,对于类外使用而言,这两个是完全相同的.

但是在基类的派生类中,可以直接访问继承而来的protected成员,但是不能访问private限制的成员.所以在派生类中,可以访问基类继承而来的 public和proected两种类型的成员.在public公有派生下,继承而来的成员访问权限不变.protected派生下,public和 protected都变成protected,private派生下,所有的继承下来都是private了.