首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

友元种

2013-01-04 
友元类#includeiosteamusing namespace stdclass Bclass A{public:friend class Bprivate:int a}cl

友元类
#include<iosteam>
using namespace std;

class B;

class A
{
public:
friend class B;
private:
int a;
};

class B
{
public:
void fun()
{
a = 0;
cout<<a<<endl;
}
};

int _tmain(int argc, _TCHAR* argv[])
{
B b;
b.fun();
return 0;
}


这个为什么编译不能通过?
友元类应如何声明?
谢谢!!!
[解决办法]
友元类是指B类中能够访问A类中的私有成员,B类中的函数应该类似于这样:
void B::func(A &a) {
    A.a = 0;
    cout<<A.a<<endl;
}
[解决办法]
 http://kingplesk.org/2011/05/c-friend-%E5%8F%8B%E5%85%83%E7%B1%BB%E5%AE%9E%E4%BE%8B-hello-world/
看看这个例子

热点排行