首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护—个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护—个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一
admin
2020-05-14
39
问题
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护—个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一组测试数据,此种隋况下程序的输出应该是:
ValArray v1={1,2,3,4,5}
ValArray v2={1,2,3,4,5}
要求:
补充编制的内容写在“//*********333*********”与“//*********666*********”之间,不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为boj文件,并且在本程序中调用。
//ValArray.h
#include
using namespace std;
class ValArray{
int*V;
int size;
public:
ValArray(const int*p,int n):size(n)
{
v=new int[size];
for(int i=0;i
v
=p
;
}
ValArray(const ValArray&other);
~ValArray(){delete[]v;)
void print(ostream&out)const
{
out<<’{’;
for(int i=0;i
out <
<<",";
out<
}
void setArray(int i,int val)
{
v
=val ;
}
};
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 vl(a,5);
cout<<"ValArray v1=";
v1.print(cout);
cout<
ValArray v2(v1);
cout<<"ValArray v2=";
v2.print(cout);
cout<
writeToFile("");
return 0;
}
选项
答案
Size=other.Size; v=new int[size]; for(int i=0;i
解析
主要考查考生对复制构造函数的掌握,ValArray类的复制构造函数应实现对象的深层复制。由ValArray类的构造函数:
ValArray(const int* p,int n)
:size(n)
{
v=new int[size];
//给v分配大小为size的空间
for(int i=0;i
v
=p
;
//把p
赋值给v
}
可知类中v是动态数组,size表示数组长度,因此要先给v分配空间为size,再逐个元素复制以达到对象的深层复制。
转载请注明原文地址:https://kaotiyun.com/show/nq8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序的执行结果为#include<iostream.h>voidmain(){inta=3,b=0;int*p=&a;b=+a++;cout<<
函数swap(arr,n)可完成对arr数组从第1个元素到第n个元素两两交换。在运行调用函数中的语句后,a[0]和a[1]的值分别为【】。a[0]=1;a[1]=2;swap(a,2);
若有如下语句#include<iostream.h>voidmain(){intx=3:do{X=X-2;cout<<X;}while(!(--x)
下列叙述中,不正确的是()。
下面程序输出的结果为()。#include<iostream.h>voidfun(inta,intb){inttemp;temp=a;a=b;b=temp;}void
在派生类中,对类对象成员,基类成员和非类对象成员的初始化程序是【 】。
下列关于关系运算的叙述中正确的是
下面关于C++语言变量的叙述错误的是
关于动态联编的下列叙述中,______是错误的。
下列关于队列的叙述中正确的是
随机试题
A.医生对病人的呼叫或提问给予应答B.医生的行为使某个病人受益,但却给别的病人带来了损害C.妊娠危及母亲的生命时,医生给予引产D.医生给病人实施粗暴性的检查E.医生尊重病人是指满足病人的一切要求上述属于医生违背有利原则的是
夏季,羊群转移到潮湿的池塘边自由采食水草,部分羔羊出现被毛粗乱,食欲不振,眼睑、颌下、胸下、腹下等处水肿,而成年羊症状较轻。剖检死亡的羔羊发现,肝脏肿大、变硬,内含虫体呈棕红色的叶片状,大小为2~3cm。羊群最有可能感染的寄生虫病是
A.泰万菌素B.苯唑西林C.黏菌素D.氨苄青霉素E.灰黄霉素可用于治疗犊牛、马属动物皮肤真菌病的药物是
下列关于新型组胺类药物倍他司汀说法错误的是
根据《税收征收管理法》规定,延期缴纳税款的期限,最长不得超过( )个月。根据《税收征收管理法》的有关规定,企业及其在外地设立的分支机构等从事生产、经营的纳税人,应当自领取营业执照之日起,( )日内,向税务机关申报办理税务登记。
某单位擅自销毁账簿,税务机关难以查账,此时税务机关()。
在产品成本计算的基础上,按物流领域、物流功能分别设置二级、三级明细账的物流成本核算方法,属于独立的物流成本核算体系。()
下列不属于教学设计过程的基本要素的是()
(2017·四川)在我国,凡是中央国家机关制定的教育法律、教育行政法规和其他规范性文件,除非有特殊规定,一经公布施行,就在我国的全部领域内发生效力。()
设Q为三阶非零矩阵,且PQ=O,则().
最新回复
(
0
)