如果没估计错,你用的是 vc++ 6.0。vc++6.0 没有完全实现 C++ 标准,它所提供不带后缀 .h 的头文件不支持把成员函数重载为友元函数。把 #include <iostream> 换成:#include <iostream.h> 再把 using namespace std; 删除。如果可以,把 vc++ 6.0 最好换成 VS2010。
友元函数是可以直接访问类的私有成员的非成员函数。它是定义在类外的普通函数,它不属于任何类,但需要在类的定义中加以声明,声明时只需在友元的名称前加上关键字friend。 我们已知道类具有封装和信息隐藏的特性。只有类的成员函数才能访问类的私有成员,程序中的其他函数是无法访问私有成员的。非成员函数可以访问类中的...
相关知识点: 试题来源: 解析 正确答案:C解析:友元函数的定义既可以在类内部进行,也可以在类外部进行。它提高了程序的运行效率,但破坏了类的封装性和隐藏性,使得类的非成员函数可以访问类的私有成员。
A.友元函数的实现必须在类的内部定义B.友元函数是类的成员C.友元函数破坏了类的封装性和隐藏性D.友元函数不能访问类的私有成员相关知识点: 试题来源: 解析 C [解析] 静态数据成员必须在类体外初始化,它是类的所有对象的共有成员,需要使用类名调用,静态数据成员的初始化与权限控制无关。
以下关于友元函数的叙述中正确的是( )。A、友元函数的实现必须在类的内部定义B、友元函数是类的成员函数C、友元函数破坏了类的封装性和隐藏性D、友元函数不能访问类的私有成员
关于友元函数描述正确的是___。A.友元函数必须在类的内部定义B.友元函数是类的成员函数C.友元函数破坏了类的封装性与隐蔽性D.友元函数不能访问类的私有成员
题目关于类的友元函数说法正确的是 A.友元函数能访问类的私有数据成员B.友元函数能访问类的数据域成员的getter和setter函数C.友元函数不能访问类的私有成员D.友元函数不能访问类的保护成员E.友元函数不能访问类的公有成员相关知识点: 试题来源: 解析 AB ...
下面关于友元函数的描述正确的是( )。A.友元函数不能访问类的私有成员B.友元函数破坏了类的封装性和隐藏性C.友元函数是类的成员函数D.友元函数的实现必须在类的内部定义
下面关于友元的描述中,错误的是()。 A. 友元函数可以访问该类的私有数据成员 B. 一个类的友元类中的成员函数都是这个类的友元函数 C. 友元可以提高程序的运行效率 D