首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//********333********和********666********之间填写StringVar成员函数和友元函数
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//********333********和********666********之间填写StringVar成员函数和友元函数
admin
2017-02-21
60
问题
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//********333********和********666********之间填写StringVar成员函数和友元函数的实现代码。在main函数中给出了一组测试数据,运行时输入:
Hello Kitty
此情况下程序的输出应该是:
Hello Kitty
Borg
Borg
注意:只需在//********333********和//********666********之间填入所编写的若干语句,不要改动程序中的其他内容。
//StringVar.h
#include<iostream>
#include<cstdlib>
#include<cstddef>
#include<cstring>
using namespace std;
void writeToFile(const char *
path);
class StringVar
{
public:
StringVar(int size);//构造函数,size为字符串长度(字符个数)初始值;字符串内容初始化为空串
StringVar (const char a[]);//构造函数,用参数数组a的内容初始化当前对象
StringVar(const StringVar&strobj);//复制构造函数
~StringVar(){delete[]value;};//析构函数
int length() const{return strlen(value);}
//从输入流ins输入一个字符串,其中可以包括空格
void input_line(istream&ins);
//返回字符串首地址
char * getValue()const{return value;}
private:
char * value;//字符串首地址
int max_length;//字符串最大长度(字符个数最大值)
};
//将the_string通过输出流outs输出
ostream&operator<<(ostream&outs,const StringVar the_string);
//main.cpp
#include<iostream>
#include<string>
#include"StringVar.h"
//*********333*********
//*********666*********
int main()
{
StringVar namel(30),name2("Borg");
name1.input line(cin);
StringVar name3(name2);
cout<<name1<<end1;
cout<<name2<<end1;
cout<<name3<<end1;
writeToFile(".、\\");
return 0;
}
//writeToFile.cpp
#include<iostream>
#include<fstream>
#include<sstream>
#include<string>
using namespace std;
#include"StringVar.h"
void writeToFile(const char *
path)
{
char filename[30];
strcpy(filename,path);
strcat(filename,"out.dat");
ofstream fout(filename);
istringstream is(string("Jenny Zheng"));
StringVar namel(40),name2("John");
name1.input_line(is);
StringVar name3(name2);
fout<<name1<<name2<<name3;
fout.close();
}
选项
答案
StringVar∷StringVar(int size):max_length(size)//使用成员初始化列表初始化max_length { value=new char[size]; value[0]=’\0’; } StringVar∷StringVar(constchar a[]) { max_length=strlen(a)+1; value=new char[max_length]; strcpy(value,a); } StringVar∷StringVar(const StringVar&strobj) { max_length=strobj.max_length; value=new char[strlen(strobj.value)+1]; strcpy(value,strobj.value); } void StringVar∷input_line(istream&ins) { int i=0; char ch; while(i<max length-1&&(ch=ins.get())!=’\n’) { value[i++]=ch; } value[i]=’\O’; } ostream&operator<<(ostream&outs, const StringVar the_string) { outs<<the string.getValue()<<end1; return outs; }
解析
转载请注明原文地址:https://www.kaotiyun.com/show/ABAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在C++语言的面向对象程序设计框架中,【】是程序的基本组成单元。
将代数式转换成程序设计中的表达式为【】。
数据库设计包括两个方面的设计内容,它们是
【】是C++语言程序的入口。
为了便于对照检查,测试用例应由输入数据和预期的【】两部分组成。
软件测试的常用方法通常可分为白盒测试和【】。前者是根据程序的内部逻辑来设计测试用例,后者是根据软件的规格说明来设计测试用例。
设有一个10阶的对称矩阵A[10][10],采用压缩存储方式按行将矩阵中下三角部分的元素存入一维数组B[]中,A[0][0]存入B[0]中,则A[8][5]在B[]中( )位置。
数据的逻辑结构在计算机存储空间中的存放形式称为数据的______。
下面程序有注释的语句中,错误的语句是( )。 #include <iostream> using namespace std; class A{ int a; public: void show A()
随机试题
唯心主义的认识论根源是()
正常小儿前囟门闭合的年龄是
患者女性,60岁,慢性咳喘20年,剧烈咳嗽3天,无咳痰、咯血及发热,半小时前突发胸痛,呼吸困难,不能平卧,伴发绀。体检:血压150/100mmHg,呼吸40次/分。右胸语颤减弱,呼吸音减低。心率110次/分。以上表现符合
急性催眠药物中毒的主要表现不包括
某学校会计模拟试验课上,同学们对银行审核支票付款的依据发生了争论。周同学:“应审核支票出票人与银行约定使用的支付密码。”吴同学:“应审核支票持票人的身份证件。”郑同学:“应审核支票收款人的进账单。”王同学:“应审核出票人预留在其开户银行的印鉴。”(
下列各项中应在企业“销售费用”科目运算的是()。
许多人利用早晨和晚上的时间学习和记忆,其效果优于白天。这是因为早上和晚上所受的是()的干扰。
群英和志城都是经营微型计算机的公司。它们是电子一条街上的两颗高科技新星。为了在微型计算机市场方面与几家国际大公司较量,群英公司和志城公司在加强管理、降低成本、提高质量和改善服务几方面实行了有效的措施,1998年的微机销售量比1997年分别增加了15万台和1
下列凭证免征印花税的是()。
AstrangethinghappenedtomelastSunday.Itwas(16)abeautifuldaythatIdrovetogoforalookinthecountry.Ont
最新回复
(
0
)