首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出
admin
2017-02-21
53
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:
ValArray v1={1,2,3,4,5}
ValArray v2={2,2,2,2,2}
要求:
补充编制的内容写在“//*******333*******”与“//********666********”之间。不要修改程序的其他部分。
注意:
相关文件包括:main.cpp、ValArray.h。
程序最后调用writeToFile函数,使用另一组不同的测试数据,将不同的运行结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件。
//ValArray.h
#include<iostream>
using namespace std;
class ValArray {
int,* v;
int size;
public:
ValArray(const int * P,intn):si ze(n)
{
v=new int[size];
for(int i=0;i<size;i++)
v
=P
;
}
ValArray(const ValArray&other);
~ValArray(){delete[]v;}
void setElement(int i,int val)
{
v
=val;
}
void print(ostream&out)const
{
out <<’{’;
for(int i=0;i<size-1;i++)
out <<v
<< ",";
out << v[size-1] <<’}’;
}
};
void writeToFile(const char * );
//main.cpp
#include"ValArray.h"
ValArray∷ ValArray (const
ValArray&other)
{
//********333********
//********666********
}
int main()
{
const int a[]={1,2,3,4,5);
ValArray v1(a,5);
ValArray v2(v1);
for(int i=0;i<5;i++)
v2.setElement(i,2);
cout<<"ValArray v1=";
v1.print(cout);
cout << end1;
cout <<"ValArray v2=";
v2.print(cout);
cout << end1;
writeToFile("");
return 0;
}
选项
答案
Size=other.size; //把对象数组的大小赋值给size v=new int[other.size]; //根据对象数组的大小动态分配数组V for(int i=0;i<size;++i) v[i]=0ther.v[i]; //遍历整个对喙的数组把值other.v[i]放到数组v中
解析
主要考查考生对复制构造函数的掌握。由函数名:ValArray∷ValArray(const ValArray&other),知道要复制的对象是other,对由ValArray类的成员:int * v;int size;知道要复制的内容是动态数组v及整型变量size。动态数组要使用new语句分配内存,最后利用for循环语句来完成复制过程。
转载请注明原文地址:https://kaotiyun.com/show/tBAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序在构造函数和析构函数中申请和释放类的数据成员int*a,申请时使用形参b初始化a,请填空。classA{public:A(intb);~A(
下列C++标点符号中表示一条预处理命令开始的是()。
下面程序的执行结果是#include"iostream.h"voidmain(){int*p,r;p=newint;*p=20;r=s
如果表达式--x/y中的“--”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为
虚函数必须是类的【】。
以下数据结构中不属于线性数据结构的是
C++语言标识符是以字母或______开头的,由字母,数字和下划线组成的字符串。
下列选项中合法的用户标识符是( )。
写出执行完下列代码段之后指定变量的值:boolx=true,y=false,z=false;x=x&&y||z;y=x||y&&z;z=!(x!=y)||(y==z);则x=false,y=false,Z=
模板使我们可以用一个代码段指定一组相关函数(称为______)或一组相关类(称为______。
随机试题
Somepeopleworryaboutmycollectingofthosefascinatingbirdsandanimalsthattheypaytoseeinthezoo.Oneofthequestio
A.痰滞于胃B.饮停于胃C.痰凝肌肤D.痰阻经络纳呆恶心,呕吐痰涎。为
某医院年终对全院职工的基本情况作调查了解,其中有以下情况:死亡一人,医生甲因病在家闲了接近2年,医生丙参与经营未从事医疗两年多,医生丁承包医院的第二门诊三年,其余大多数仍在医院坚持工作,依据执业医师法,下列人员中,属于应当注销注册,收回医师执业证书的是
有机整体的"主宰"是()
(2006年简答题)甲、乙、丙、丁四人共同投资设立A普通合伙企业。合伙协议的部分内容如下:由甲、乙执行合伙企业事务,丙、丁不得过问企业事务;利润和损失由甲、乙、丙、丁平均分配和分担。在执行合伙企业事务过程中,为提高管理水平,甲自行决定聘请王某担任合伙企业经
(2011年)2010年4月6日,甲公司为履行与乙公司的买卖合同,签发一张已经由本公司承兑的商业汇票交付乙公司,汇票收款人为乙公司,到期日为10月6日。4月14日,乙公司将该汇票背书转让给丙公司。9月8日,丙公司持该汇票向其开户银行Q银行办理贴现。该汇票到
周师傅在某单位工作,该单位周一到周五为工作日,周六周日双休。已知某年的8月1日是星期五,那么周师傅在该年8月一共需要出勤()天。
甲、乙、丙、丁四人的车分别是白、黑、红、蓝。在问到他们各自车的颜色时,甲:“乙的不是白色”,乙:“丙的是蓝色”,丙:“丁的不是红色”。丁:“甲、乙、丙三人的车有一个是蓝色,而且只有车的颜色是蓝色的这个人说了实话。”如果丁说的是实话,那么以下说法正确的是哪一
关于十九世纪七八十年代的“边疆危机”下列正确的表述有()
AnewstudypublishedinthejournalProceedingsoftheRoyalSocietyBbytheteamsofDr.GregoryWestandDr.VeroniqueBohbo
最新回复
(
0
)