C++中的private、protected、public区别
来源:互联网 发布:spss软件应用例子 编辑:程序博客网 时间:2024/04/30 09:10
private, public, protected 访问标号的访问范围
private:
只能由1.该类中的函数、2.其友元函数访问。
不能被任何其他访问,该类的对象也不能访问。
protected:
可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。
但不能被该类的对象访问。
public:
可以被1.该类中的函数、2.子类的函数、3.其友元函数访问,也可以由4.该类的对象访问。
注:友元函数包括3种:设为友元的普通的非成员函数;设为友元的其他类的成员函数;设为友元类中的所有成员函数。
#include<iostream>using namespace std;class A{public:A();A(int s,int n);int getNum() const;int getSum() const;friend int get_Num(A&);friend int get_Sum(A&);protected:int sum;private:int num;};A::A(){num=0;sum=0;}A::A(int s,int n){num=n;sum=s;}int A::getNum() const{return num;}int A::getSum() const{return sum;}int get_Num(A &a){return a.num;}int get_Sum(A &a){return a.sum;}class B:public A{public:B(int s,int n):A(s,n){}int BgetNum() const;int BgetSum() const;};/*int B::BgetNum() const{return num;//派生类不能访问基类的私有成员}*/int B::BgetSum() const{return sum;//派生类可以访问基类的保护成员}int main(){A a1;cout<<"num:"<<a1.getNum()<<",sum:"<<a1.getSum()<<endl;cout<<"num:"<<get_Num(a1)<<",sum:"<<get_Sum(a1)<<endl;A a2(3,2);cout<<"num:"<<a2.getNum()<<",sum:"<<a2.getSum()<<endl;cout<<"num:"<<get_Num(a2)<<",sum:"<<get_Sum(a2)<<endl;system("pause");return 0;}
0 0
- C++中的private protected public区别
- C++中的private、protected、public区别
- C++中的public、protected、private区别详解
- JAVA中的public,protected,default,private区别
- C++中的private protected public区别
- C++中的private protected public区别
- C++中的private protected public区别
- C++中的private protected public区别
- 如何区别java中的public,private,protected
- C++中的private protected public区别
- public,private,protected 区别和作用(C++)
- public,private,protected 区别和作用(C++)
- public protected private区别
- public private protected 区别
- public,private,protected 区别
- public,private,protected区别
- private-protected-public区别
- public,private,protected 区别
- 用户识别
- N皇后问题
- 让需求活动脚踏实地(零)——搞需求太难了
- CocosEditor-java
- eclipse各版本说明与区别
- C++中的private、protected、public区别
- 常用的sql语句小结
- c语言学习的阶段性小总结
- 向全世界发出第一篇博客
- ORACLE 多表关联 UPDATE 语句
- Javaweb开发防止用户重复登录
- 腾讯笔试题
- linux有关文件共享的操作
- 关于Find Security Bugs新版本1.2.1及其它