作者:mobiledu2502880747 | 来源:互联网 | 2023-05-17 09:48
#include using namespace std;
class aa
{friend class friendClass;//有元类
friend void friendFunc();//有元函数
public:
int public_num;
void public_func()//类的函数 调用 类的成员变量
{cout<<"public_func: "<
cout<<"==================public"< protected:
int protected_num;
void protected_func()
{cout<<"protected_func:"<
cout<<"==================protected"< private:
int private_num;
void private_func()
{cout<<"private_func: "<
cout<<"==================private"< };
class friendClass
{public:
friendClass()
{ cout< cout<<"friendClass"< aa aAa;
aAa.public_num=1;
aAa.protected_num=2;
aAa.private_num=3;
aAa.public_func();
aAa.protected_func();
aAa.private_func();
}
~friendClass(){}
};
void friendFunc()
{
cout< cout<<"friendFunc"< aa bBb;
bBb.public_num=11;
bBb.protected_num=22;
bBb.private_num=33;
bBb.public_func();
bBb.protected_func();
bBb.private_func();
}
int main()
{
aa aEa;//类的实例
//类的public成员变量、成员函数,可以通过类的成员函数、类的实例变量进行访问
aEa.public_num=111;
aEa.public_func();
//类的实例变量 无法访问 protected成员变量、成员函数
//aEa.protected_num=222; 错误
//aEa.protected_func(); 错误
//类的实例变量 无法访问 private成员变量、成员函数
//aEa.private_num=333; 错误
//aEa.private_func(); 错误
friendFunc();/* 友元函数可以访问public,protected,private成员变量和函数 */
friendClass friendObject;/* 友元类可以访问public,protected,private成员变量和函数 */
cout <<"Hello World!" < return 0;
}