首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)声明类objAl,请在注释//********1********后添加适当的语句。 (2)为类oNA0增加友元函数
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)声明类objAl,请在注释//********1********后添加适当的语句。 (2)为类oNA0增加友元函数
admin
2016-10-28
67
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)声明类objAl,请在注释//********1********后添加适当的语句。
(2)为类oNA0增加友元函数func(),请在注释//********2********后添加适当的语句。
(3)为类obiAl增加友元函数func(),请在注释//********3********后添加适当的语句。
(4)函数func()返回obiA1对象中的变量和obiA0的静态变量的乘积,请在注释//********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include<iostream.h>
//********1********
class objA0
{
private:
static int m A0;
//********2********
};
int objA0::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<<func(obj0)<<endl;
return0;
}
选项
答案
(1)添加语句:class objAl; (2)添加语句:friend int func(objAl&obj); (3)添加语句:friend int func(objAl&obj); (4)添加语句:return obj.m A1’objA0::mA0;
解析
(1)类的声明格式为:“class<类名>:”,因此第1个标识下应添加“class objAl;”。
(2)按照友元的定义格式,友元函数是在类声明中由关键字friend修饰的非成员函数,func函数在类外部给出了具体的实现形式,即“int func(objAl& obi)”,因此第2个标识下应添加“friend int func(objAl&obj);”,这里参数是objAl类对象obi。
(3)第3个标识下和题目2要求一样,均是声明友元函数,因此第2标识下应添加“friend int func(obiAl&obj);”。
(4)通过参数obj对象可以直接访问obi.m A1,obiA0的静态变量m_A0是所有对象的共享成员,其访问形式为:objA0::m_A0,因此第4个标识下应添加“return obi.m_A1*ob{A0::mA0;}”。
转载请注明原文地址:https://kaotiyun.com/show/I7Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面关于友元的描述中,错误的是()。
下面这个程序的结果是#include<iostream.h>classA{private:inta;public:voidseta();intgeta();};
下列数据模型中,具有坚实理论基础的是
给出以下程序的执行结果【】。#include<iostream>usingnamespacestd;intn=1;voidFun();intmain(){n++;
【】是当前软件开发环境中富有特色的研究工作和发展方向。
若要打开二进制文件binfile写方式,输出到文件尾则应为:ofstreambfile("binfile",______);
重载的运算符保持其原有的【】、优先级和结合性不变。
运算符函数调用格式的表达式:y/x++与表达式:y.operator/(operator++(x,O))含义相同,由此可看出()。
类模板的模板参数()。
有如下函数模板的定义:template<classT>Tfunc(Tx,Ty){returnx*x+y*y;}在下列对func的调用中不正确的是
随机试题
当油、气混合物从进口进入分离器后,喷到卧式分离器隔板上散开,因扩散作用使溶于油中的天然气()出来。
痢疾的特异性表现是()
下列选项中不属于小细胞性贫血的是
人民检察院在抗诉期限内,对某区人民法院的一起强奸案件的刑事判决提起抗诉。市人民法院在审理该案件时,通知人民检察院派员出庭,但是检察院在接到通知后没有派员出庭,对此,人民法院的下列做法正确的是:()
当任何工作已准备就绪,在将其包装、覆盖或隐蔽之前,承包商应及时通知()。
甲、乙双方于2009年8月10日签订一份施工合同。2009年8月20日,乙方发现甲方隐瞒了施工现场周边真实地质条件,如果按合同施工,将增加近30%的施工费用,遂与甲方协商但遭到拒绝。根据我国《合同法》的规定,乙公司若要行使其撤销权,必须在()之
我国国内航班的编号由执行任务的航空公司的()组成。
阅读下面材料,回答问题。在艺术创作中,往往有一个重复和变化的问题。只有重复而无变化,作品就必然单调枯燥;只有变化而无重复,就容易陷于散漫零乱。重复与变化的统一,在建筑形象的艺术效果上起着极其重要的作用。古今中外的无数建筑,除去极少数例外,几乎都
数据模型可分为概念数据模型和结构数据模型,层次模型是()数据模型。
以下叙述中错误的是
最新回复
(
0
)