首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一
admin
2020-10-21
77
问题
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一组测试数据,此种情况下程序的输出应该是:
ValArrayvl:{1,2,3,4,5}
ValArrayv2={1,2,3,4,5}
要求:
补充编制的内容写在“//**********333**********”与“//**********666**********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为boj文件,并且在本程序中调用。
//VaiArray.h
#include
usingnamespacestd;
classVaiArray{
int*v;
intsize;
public:
VaiArray(constint*p,intn):
size(n)
{
v=newint[size];
for(inti=0;i
v
=P
;
}
VaiArray(constVaiArray&other);
~VaiArray(){delete[]v;}
voidprint(ostream&out)const
{
out<<’{’;
for(inti=0;i
out<
<<",";
out<
}
voidsetArray(inti,intval)
{
v
=val;
}
};
voidwriteToFile(constchar*);
//main.cpp
#include"ValArray.h"
ValArray::ValArray(constValArray&
other)
{
//********333********
//********666********
}
intmain()
{
constinta[]={1,2,3,4,5);
ValArrayv1(a,5);
tout<<”ValArrayv1:”;
v1.print(cout);
cout<
ValArrayv2(v1);
cout<<"ValArrayv2=";
v2.print(cout);
cout<
writeToFile("");
return0;
}
选项
答案
size=other.size; v=Flewint[size]; for(inti=0;i
解析
主要考查考生对复制构造函数的掌握,ValArray类的复制构造函数应实现对象的深层复制。由ValArray类的构造函数:
ValArray(constint*p,intn):size
(n)
{
v=newint[size];
//给v分配大小为size的空间
for(inti=0;i
//遍历p
v
=p
;
//把p
赋值给v
}
可知类中v是动态数组,size表示数组长度,因此要先给v分配空间为size,再逐个元素复制以达到对象的深层复制。
转载请注明原文地址:https://kaotiyun.com/show/dyyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:##inc1ude<iostream>usingnamespacestd;classPublication{//出版物类charname[30];public:Publica
若一个函数的原型为“int*Xfunl(intx,int&y,charz);”,则该函数的返回值类型为()。
执行语句:{cout
数据库应用系统中的核心问题是()。
假设函数fun已经定义,其原型为“voidfun(inta,intb=7,char*p=ˊˊ**ˊˊ);”下列函数调用中错误的是()。
在一个容量为15的循环队列中,若头指针front=6,尾指针rear=9,则循环队列中的元素个数为()。
有如下类定义:classPoint{private:staticinthow_many;};_________how_many=0;要初始化Point类的静态成员how_many,下画线处应
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明了一个单向链表类sLst。sList的成员函数Prepend的功能是在链表头部加入一个新的元素。请编写成员函数Pepend。在main函数中给出了一组测试数据,此时程序的输出
下列符号中可以用作C++标识符的是()。
随机试题
行甲状腺手术时应防止损伤的主要结构有()
被改编为戏剧的同名小说《茶花女》是______的代表作。()
甲、乙两公司采用合同书形式订立了一份买卖合同,双方约定由甲公司向乙公司提供100台精密仪器,甲公司于8月31日前交货,并负责将货物运至乙公司,乙公司在收到货物后10日内付清货款。合同汀立后双方均未签字盖章。7月28日,甲公司与丙运输公司订立货物运输合同,双
()是指先统一征税,然后再将税收收入的总额按照一定比例在中央与地方政府之间加以分割。
如果同事W多次对你说“Q在背地里经常说你的坏话”,你的反应是()。
简述亲子关系的类型。
世界历史上第一部资产阶级成文宪法是()。
在中断处理中,输入输出中断是指
若服务器系统可用性达到99,99%,那么每年的停机时间必须小于
假设某台计算机的内存容量为256MB,硬盘容量为40GB。硬盘容量是内存容量的
最新回复
(
0
)