快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

友员函数和友员类

#include

成都创新互联公司专业为企业提供安乡网站建设、安乡做网站、安乡网站设计、安乡网站制作等企业网站建设、网页设计与制作、安乡企业网站模板建站服务,10年安乡做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

using namespace std;

class Test2//注意友员类的定义放在Test1的之上!!

{

friend class Test1;//Test1想直接访问Test2的private参数,所以声明为我是你的朋友!

public:

Test2(int a, int b){ x = a; y = b; }

int getx(){

return x;

}

int gety(){

return y;

}

private:

int x, y;

};

class Test1{

public:

Test1(int a, int b) :t(a, b){}

void print(){ cout << "Test2 的对象t的x:" << t.x << endl; }

private:

Test2 t;//因为Test2是Test1的友员

};

class Test3{

public:

friend int getTx(Test3 & t3);//友员函数通过类的指针或引用访问这个类对象的私有成员

private:

//friend int getTx(Test3 & t3);//放在这里完全一样,访问限制符对友员函数不管用

int x;

};

int getTx(Test3 & t3){//友员函数在类外定义!不加static防止给别的混淆

return t3.x;//友员函数可以使用类的所有函数

}

int main(){

Test1 t1(2,5);

t1.print();

system("pause");

return 0;

}


分享标题:友员函数和友员类
标题网址:http://6mz.cn/article/ihidpc.html

其他资讯