使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)声明类objA1,请在注释∥********1********后添加适当的语句。 (2)为类obj

admin2017-09-20  28

问题 使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
    (1)声明类objA1,请在注释∥********1********后添加适当的语句。
    (2)为类objA0增加友元函数func0,请在注释∥********2********后添加适当的语句。
    (3)为类objA1增加友元函数func0,请在注释∥********3********后添加适当的语句。
    (4)函数func0返回obiAl对象中的变量和objA0的静态变量的乘积,请在注释∥********4********后添加适当的语句。
    注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include
∥********1********
class objA0
{
private:
    static int m A0;
∥********2********
};
int obj A0::m A0=10;
class objA1
{
private:
    int m A1;
∥********3********
public:
    objAl(int i)
    {
    m A1=i;
    }
};
int func(objAl&obj)
{
∥********4********
}
int main()
{
    objA1 obj0(10);
    cout<    return 0;
}

选项

答案(1)添加语句:class objAl; (2)添加语句:friend int func(objAl&obj); (3)添加语句:friend int func(objAl&obj); (4)添加语句: return obj.m A1*objA0::m—A0;

解析 友元提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间进行数据共享的机制,友元不是本类的成员函数,在它的函数体内部可以通过对象名来访问类的私有成员和保护成员。友元函数是在类声明中由关键字friend修饰的非成员函数。func()函数为类objA1的友元,因此可以通过对象名直接访问到obiA1的私有成员变量。
转载请注明原文地址:https://kaotiyun.com/show/VTAp777K
0

最新回复(0)