//----------------------------------------friend class--------------------------------
/*
friend class 是一个在类中声明另一个类为友元的方法。
当一个类(MyFriendClass)声明另一个类(SEALContext)为友元时,被声明为友元的类(SEALContext)可以访问声明友元的类(MyFriendClass)的私有成员
*/
#include <iostream>
using namespace std;
class MyFriendClass{
private:
int privateMember;
public:
friend class SEALContext;
MyFriendClass(int value): privateMember(value){}
void DisplayPrivateMember(){
std::cout<<"Private Member: "<<privateMember<<std::endl;
}
};
class SEALContext{
public:
void AccessPrivateMember(MyFriendClass &myFriendObj){
std::cout<<"Accessing Private Member from SEALContext: "<< myFriendObj.privateMember<<std::endl;
}
};
int main(){
MyFriendClass MyObj(42);
SEALContext sealContext;
MyObj.DisplayPrivateMember();//Private Member: 42
sealContext.AccessPrivateMember(MyObj);//Accessing Private Member from SEALContext: 42
return 0;
}
c++_friend class
最新推荐文章于 2024-07-20 18:10:49 发布