首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ViArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一组
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ViArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一组
admin
2019-06-05
69
问题
请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ViArray类的复制构造函数应实现对象的深层复制。请编写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;
clas s ValArray{
int*y;
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 v1(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类,其中涉及动态数组、构造函数、复制构造函数、析构函数和const函数。注意动态数组的复制构造函数要先给动态数组分配空间,再逐个元素复制。
【解题思路】
主要考查考生对复制构造函数的掌握,ValArray类的复制构造函数应实现对象的深层复制。由ValArray类的构造函数:ValArray(const int* p,int n) :size
(n)
{
v=new int[size];
//给v分配大小为size的空间
for (int i =0; i < size; i++)
//遍厉p
v
=p
;
//把p
赋值给v
}
可知类中v是动态数组,size表示数组长度,因此要先给v分配空间为size,再逐个元素复制以达到对象的深层复制。
转载请注明原文地址:https://kaotiyun.com/show/Im8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列哪种数据模型可以用树形结构来表示实体之间联系()。A)网状模型B)数据模型C)关系模型D)层次模型
A、 B、 C、 D、 A要对线性表进行二分法查找,对线性表有两个要求:第一,要求线性表是按顺序方式存储的;第二,要求线性表中的元素是按照从小到大的顺序排好序。
有如下语句序列:intx=-10;while(++x){}运行时while循环体的执行次数为______。
下列关于函数模板的描述中,正确的是()。A)函数模板是一个实例函数B)使用函数模板定义的函数没有返回类型C)函数模板的类型参数与函数的参数相同D)通过使用不同的类型参数,可以从函数模板得到不同的实例函数
若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是()。A)Data+(DatA);B)Dataoperator+{Data};C)Data+operator{Data};D)operator+(Data,D
友元类的所有成员函数都是另一个类的______。
软件危机出现于60年代末,为了解决软件危机,人们提出了______的原理来设计软件,这就是软件工程诞生的基础。
随机试题
在《汉穆拉比法典》中,国王的权力来源于()
诗歌情调感伤,意境朦胧的晚唐诗人是杜牧。()
下列说法中,只有________________是正确的。
A、角膜B、眼球外部C、视网膜玻璃体D、视神经E、房水口服用药后,药物经结膜血管可到()
进出口货物收发货人必须经主管部门审批才能取得相应的经营权,下列具有审批权的部门是()。
甲公司是一家机械加工企业,产品生产需要某种材料,年需求量为720吨(一年按360天计算)。该公司材料采购实行供应商招标制度,年初选定供应商并确定材料价格,供应商根据甲公司指令发货,运输费由甲公司承担。目前有两个供应商方案可供选择,相关资料如下:方案一:
甲公司2014年1月1日发行面值总额为10000万元的债券,取得的款项专门用于建造厂房。该债券系分期付息、到期还本债券,期限为4年,票面年利率为10%,每年12月31日支付当年利息。该债券年实际利率为8%。债券发行价格总额为10662.10万元,款项已存入
在一个单因子方差分析中,因子有3个水平,在每一水平下的试验数据如表2.1—3所示,则下列结论正确的是()。
下列号称“江南煤海”的是()。
下列哪些情形不构成无因管理?()。
最新回复
(
0
)