c++中私有跟保护有什么区别

2024-12-16 17:19:13
推荐回答(4个)
回答1:

公用(public):访问权限最高;除派生类外,外部函数也可以直接访问(无论是成员变量还是成员函数)。
私有(private):访问权限最低;只能是该类内部函数互相调用,派生类、外部函数都不能访问。
保护(protect):访问权限中间;该类内部函数、派生类都能访问,外部类、外部函数不能访问

回答2:

公用(public):访问权限最高;除派生类外,外部函数也可以直接访问(无论是成员变量还是成员函数)。

私有(private):访问权限最低;只能是该类内部函数互相调用,派生类、外部函数都不能访问。

保护(protect):访问权限中间;该类内部函数、派生类都能访问,外部类、外部函数不能访问

c++中protected 和private 的唯一区别:
在继承关系中:
基类中被protected修饰的所有mem_func/data_mem都能被
派生类的mem_func/data_mem直接访问
而private修饰的就不行
其余各种访问权限没有任何区别

回答3:

私有:就是这个类私有的东西,任何其他类或者外部代码都不能访问。

保护:C++有派生类,因为类私有成员只有这个类自己能访问,那如果想让派生类访问,改怎么办呢?如果用public,那达不到数据隐藏的目的,因此,产生了保护的概念,专门用来给派生类访问的,以便让派生类能访问基类中的成员。

回答4:

c++中protected 和private 的唯一区别:
在继承关系中:
基类中被protected修饰的所有mem_func/data_mem都能被
派生类的mem_func/data_mem直接访问
而private修饰的就不行

其余各种访问权限没有任何区别