首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的CDeepCopy是一个用于表示矩阵的类。请编写这个类的赋值运算符成员函数operator,以实现深层复制。 要求: 补充编制的内容写在“//*******
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的CDeepCopy是一个用于表示矩阵的类。请编写这个类的赋值运算符成员函数operator,以实现深层复制。 要求: 补充编制的内容写在“//*******
admin
2021-05-06
28
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程proj3,其中声明的CDeepCopy是一个用于表示矩阵的类。请编写这个类的赋值运算符成员函数operator,以实现深层复制。
要求:
补充编制的内容写在“//**********333**********”与“//**********666**********”之间。不得修改程序的其他部分。
注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。
//CDeepCopy.h
#include
#include
using namespace std;
class CDeepCopy
{
public:
int n;//动态数组的元素个数
int *p;//动态数组首地址
CDeepCopy(int);
~CDeepCopy();
CDeepCopy&operator=(const CDeepCopy&r);//赋值运算符函数
};
void writeToFile(char*);
//main.cpp
#include"CDeepCopy.h"
CDeepCopy::~CDeepCopy(){delete[]p;}
CDeepCopy::CDeepCopy(int k){n=k;p=new int[n];}//构造函数实现
CDeepCopy&CDeepCopy::operator=(const CDeepCopy&r)//赋值运算符函数实现
{
//**********333**********
//**********666**********
}
int main()
{
CDeepCopy a(2),d(3);
a.p[0]=1;d.p[0]=666;//对象a,d数组元素的赋值
{
CDeepCopy b(3);//调用赋值运算符函数
a.p[0]=88;b=a;
cout<
}
cout<
cout<<"d fade away;\n":
cout<
writeToFile("");
return 0;
}
选项
答案
n=r.n;//把对象r字符长度赋值给n delete[]p;//删除动态数组p p=new int[n]; //给动态数组p分配空间为n for(int i=0;i
解析
主要考查考生对运算符重载的掌握,由注释可知此处要实现赋值运算符函数。要重载的运算符是“=”,该类的成员是动态数组p,数组元素个数为n,因此先释放原来的动态数组,再分配空间,然后逐个复制元素即可。
转载请注明原文地址:https://kaotiyun.com/show/Zhfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
执行语句序列intx=1,&y=x;cout<<x<<’一’<<y<<end1;输出结果为()。
在声明派生类时,如果不显示地给出继承方式,缺省的类继承方式是私有继承private。已知有如下类定义:classTestClass{protected:voidfun(){}};classT
有如下程序:#include<iostrearn>usingnamespacestd;classTestClass1{public:TestClassl(){tout<<’’TestCla
下面程序的输出结果是()。#include<iostream.h>#include’’string.h’’voidmain(){chara[]=’’HelloTest’’,b[]=Teat’’;
关于运算符重载,下列表述中正确的是()。
字面常量42、4.2、42L的数据类型分别是()。
数据库系统的核心是()。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)重载运算符int,请在注释//********1********后添加适当的语句。(2)重载运算符“<<”,请
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转
随机试题
音素是从()角度划分出来的最小语音单位。
中间葡萄膜炎的病变部位为
青霉素过敏性休克在抢救时首先采取的措施是
个体不同的发育阶段,同一组织器官出现不同的基因产物称基因表达的个体发育的某一阶段,不同的基因产物出现在不同的组织器官,称为基因表达的
金银花的主治病证有( )。
白炽灯和卤钨灯属于( )。
下列关于关税分类的陈述。正确的是()。
根据下列材料,回答以下问题。2012年,A省完成港口货物吞吐量13.3亿吨,同比增长14.2%,其中外贸货物吞吐量2.0亿吨,增长24.5%。港口货物吞吐量中,集装箱吞吐量达878.0万标准集装箱,增长3.1%。2012年年末,全省公路里程14.2万公
下列苏州园林中属于“中国四大名园”的有()。
有以下程序#include<stdio.h>main(){intk=5,n=0;do{switch(k){case1:case3:n+=1;k--
最新回复
(
0
)