C++中的friend关键字作用:
在一个类中用friend申明其他的类或函数,申明的类或函数能够直接访问该类中的private和protected成员。
class Pack
{
private:
std::string data ;
int size ;
public:
pack(std::string s_data,int i_size);
std::string getdata(){return data;}
int getSize(){return size;}
private:
friend class useClass;
//friend void changeFun();
};
class useClass()
{
private:
Pack * pack;
void changeData(std::string s_data){
pack->data = s_data ;
}
};
注意:friend在类中的声明可以在public、protected和private的如何一个属性域中,而不影响其作用