首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类MyArrayClass的构造函数,申请数组的大小,请在注释∥********1********后添加适当的
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类MyArrayClass的构造函数,申请数组的大小,请在注释∥********1********后添加适当的
admin
2015-07-20
69
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成类MyArrayClass的构造函数,申请数组的大小,请在注释∥********1********后添加适当的语句。
(2)完成类MyArrayClass的析构函数,释放数组,请在注释∥********2********后添加适当的语句。
(3)完成重载运算符“[]”,用来获得指定下标的数据,请在注释∥********3********后添加适当的语句。
(4)完成函数SetElement0,用来设置指定下标的数据。如果数据没有超出范围,则设置数据,并返回1,否则返回0,请在注释∥********4********后添加适当的语句。
注意:除在指定的位置添加语句外,并不要更改程序中的其他语句。
#include
template
class MyArrayClasS
{
private:
T*data ;
int length;
public:
MyArrayClass(int len)
{
length=len;
∥********1********
}
-MyArrayClasS()
{
∥********2********
}
T&operator[](int i)
{
∥********3********
}
bool SetElement(int i,T t)
{
∥********4********
if()
{
data
=t ;
return true ;
}
return false;
}
};
int mein()
{
MyArrayClass
obj(5);
obj[3]=1;
cout<
<
cout<
<
return 0;
}
选项
答案
(1)添加语句:data=new T[1en]; (2)添加语句:delete[]data; (3)添加语句:return data[i]; (4)将“if()”补充完整为:if(i
解析
(1)构造函数完成成员变量的初始化,在MyArrayClass(int len)函数中申请数组的大小的内存空间,应该用new申请动态存储空间,new返回一个指向其操作数类型变量的指针,第1个标识下即将new返回的指针赋值给dah指针,因此第1个标识下应添加“data=new T[1en];”。
(2)析构函数完成资源的释放,删除由new申请的内存资源,因此第2个标识下应添加“delete[]data;”。
(3)T&operator[](int i)函数重载运算符“[]”,返回指定下标的数据,因此第3个标识下应添加“return data
;”。
(4)SetElement(int i,T t)是设置指定下标的数据,数组下标不能超限,函数体中的if()用来判断下标位置是否超限,因此第4个标识下应添加“if(i
转载请注明原文地址:https://kaotiyun.com/show/d3Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若按功能划分,软件测试的方法通常分为白盒测试方法和【】测试方法。
若语句:cout<<seffill(’>’)<<setw(5)<<3141512<<sctw(5)<<"OK!";是程序中第1个输出语句,则输出结果是()。
下面叙述错误的是()。
若有以下程序:#include<iostream>usingnamespacestd;classA{private:inta;public:A(imi){
在表达式x-y中,“-”是作为非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符“-”,这个表达式还可表示为()。
命题“10<m<15或m>20”的C++语言表达式是()。
假定a是一个一维数组,则a[i]对应的存储地址(以字节为单位)为【】。
下面程序的输出结果是【】。#include<iostream.h>#include<math.h>classpoint{doublex;doubley;public:po
下面程序的运行结果是#include<iostream.h>classbase{protected:inta;public:base(){cout<<"0";}};
下列关于break语句的叙述不正确的是()。
随机试题
甲公司采购了一项重要的大型设备,验收后由经理审批方可付款,这体现了下列哪种控制制度()
A.“4”字试验阳性B.伸肌腱牵拉试验(Mills征)阳性C.杜加(Dugas)征阳性D.直腿抬高试验(Lasegue)阳性E.压头试验阳性肱骨外上髁炎主要体征为
适合手术治疗的高血压脑内血肿是
劳动者的培训和教育可分为()。
投资估算的审查是设备监理工程师在投资控制中的一项重要任务。投资估算的审查内容包括以下()方面。
一火灾自动报警系统产生误报,则产生误报的原因主要有()。
股价移动的规律是按照多空双方力量对比大小而行动的。()
企业月末签发转账支票一张,持票单位尚未到银行办理转账,会使银行存款日记账的余额小于银行对账单的余额。()
"Down-to-earth"meanssomeoneorsomethingthatishonest,realisticandeasytodealwith.Itisapleasuretofind【C1】______wh
American’sLeisureActivitiesLeisureactivities【T1】______.Bothmenandwomenreportedthat【T2】______.Visitingfriendsand
最新回复
(
0
)