首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的工程test14_3,此工程包含一个test14_3.cpp,其中定义了类File,但类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)完成构造函数的定义,使数据成员filename,content指向为空。
使用VC6打开考生文件夹下的工程test14_3,此工程包含一个test14_3.cpp,其中定义了类File,但类的定义并不完整。请按要求完成下列操作,将程序补充完整。 (1)完成构造函数的定义,使数据成员filename,content指向为空。
admin
2009-01-15
83
问题
使用VC6打开考生文件夹下的工程test14_3,此工程包含一个test14_3.cpp,其中定义了类File,但类的定义并不完整。请按要求完成下列操作,将程序补充完整。
(1)完成构造函数的定义,使数据成员filename,content指向为空。请在注释“//**1**”之后添加适当的语句;
(2)完成函数set_contents的定义,该函数为content申请新的空间来存储new_content的内容,成功返回true,失败返回false。请在注释“//**2**”之后添加适当的语句;
(3)完成成员函数copy(File & source,File & target)的定义,该函数实现将source的内容拷贝至target的功能,注意必须使用已经定义的成员函数来实现。请在注释“//**3**”之后添加适当的语句:
(4)完成析构函数的定义,要求释放content指向的空间。请在注释“//**4**”之后添加适当的语句。
输出结果如下:
file2:file1 contents
file2:file2 contents
注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。
源程序文件testl4—3.cpp清单如下:
#include<iostream.h>
#include<string.h>
class File{
private:
char file_name[64];
char*contents;
public:
File(char*filename)
{
// ** 1 **
};
File::~File()
{
// ** 4 **
}
void printfile(){cout<<file_name<<":"<<contents<<endl;)
friend bool copy(File & source,File & target);
bool set_contents(char * new_contents);
};
bool File::set_contents(char*new_contents)
{
// ** 2 **
if(contents==NULL)
return false;
strcpy(contents,new_contents);
return true;
}
bool copy(File & source,File & target)
{
// ** 3 **
}
void main{)
{
File f1("filel"),f2("file2");
f1.set_contents("filel contents");
copy(f1,f2);
f2.printfile();
f2.set_contents("file2 contents,);
f2.printfile();
}
选项
答案
(1) strcpy(file_name,filename); contents=NULL; (2) contents=new char[(strlen(new_contents)+1)]; (3) return target.set contents(source.contents); (4) delete[]contents;
解析
主要考查点为类的构造函数的定义、字符串函数的使用及动态空间的申请与释放等,注意字符串函数的使用,其中strlen返回字符串含有字符的数目,strcpy是将参数2的字符串赋值给参数1的字符串。
转载请注明原文地址:https://kaotiyun.com/show/pOID777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
2019年12月17日,我国第一艘国产航母山东舰正式交付。下列关于山东舰的说法,错误的是()。
论述华沙条约组织的形成背景、内容及其影响。(2016年统考真题)
简述《蒙巴顿方案》的主要内容。(东北师范大学2000年世界现代史真题)
某个单峰分布的众数为15,均值是10,这个分布应该是()
如果要删除一些变异性较大的实验数据,需要遵循的原则是()
下列关于新教育发展时期的说法错误的是
下列选项中不是乌申斯基主张的教学原则是
关于教育目的各组成部分,下列表述正确的是
生物起源说和心理起源说的根本错误在于否认了教育的
波浪理论考虑的因素主要包括三个方面,其中最主要的是股价的()。
随机试题
左支气管()
男性,19岁,夏天野浴后发热、呕吐咖啡渣样物,查体:T38.5℃,巩膜黄染、全身皮肤散在出血点,心率100次/分,律齐,腹软、无压痛,肝脾未触及,最可能的诊断是
A.单核细胞B.淋巴细胞C.中性粒细胞D.嗜酸性粒细胞E.嗜碱性粒细胞犊牛感染了化脓性棒状杆菌,剖检见肾脏有明显的化脓灶,组织病理学观察见病灶局部有大量的炎性细胞浸润,该疾病炎症病灶中渗出的主要炎性细胞类型是()。[2010年真题]
委托为监理人驻工地监理机构开展正常工作提供协助服务,其服务内容包括()。
以下内容属于水利枢纽工程施工组织设计文件中临时工程施工部分内容的有()。
某建筑装饰公司承担了某宾馆200套客房的装修施工:任务。施工按先木门窗安装、吊顶后铺没实木地板。最后对吊顶及墙面进行涂饰。在涂料施工中,为防止门扇、玻璃及木饰面被污染,在施涂工作面周边粘贴美纹纸。
2011年2月16日,利比亚紧张局势升级,安全形势发生重大变化,我国政府迅速撤离了我在利比亚人员。该行动主要体现了主权国家的()。
国际储备运营管理有三个基本原则是()。
设有定义:inta=1,b=2,c=3;以下语句中执行效果与其它三个不同的是
Georgeisayoungman.Hehasaverybigdogandhehasaverysmallcar,too.Helikesplayingbasketball.LastMondayheplaye
最新回复
(
0
)