首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//**********333**********和//**********666**********之间填写StringVa
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//**********333**********和//**********666**********之间填写StringVa
admin
2021-05-06
128
问题
使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//**********333**********和//**********666**********之间填写StringVar成员函数和友元函数的实现代码。在main函数中给出了一组测试数据,运行时输入:
Hello Kitty
此情况下程序的输出应该是:
Hello Kitty
Borg
Borg
注意:只需在//**********333**********和//**********666**********之间填入所编写的若干语句,不要改动程序中的其他内容。
//StringVar.h
#include
#include
#include
#include
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
#include
#include”StringVar.h”
//*********333*********
//*********666*********
int main()
{
StringVar namel(30),name2(”
Borg”);
namel.input_line(cin);
StringVar name3(name2);
cout<
cout<
cout<
writeToFile(”.\\”);
return 0;
}
//writeToFile.cpp
#include
#include
#include
#include
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<
fout.close();
}
选项
答案
StringVar::StringVar(int size):max length(size)//使用成员初始化列表初始化 max_length { value=new char[size]; value[0]=’\0’; } StringVar::StringVar(const char 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
解析
转载请注明原文地址:https://kaotiyun.com/show/tPfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为
下面是重载为非成员函数的运算符函数原型,其中错误的是
下列有关内联函数的叙述中,正确的是()。
下列给定程序中,函数fun的功能是:从n个学生的成绩中统计出低于平均分的学生人数,此人数作为函数值返回,平均分存放在形参avet所指的存储单元中。例如,输入8名学生的成绩:80.5、60、72、90.5、98、51.5、88、64则低于
下列二叉树描述中,正确的是()。
下列有关继承和派生的叙述中,正确的是()。
在对函数进行原型声明时,下列语法成分中,不需要的是()。
下面是重载为非成员函数的运算符函数原型,其中错误的是()。
已知表达式++a中的’’++"是作为成员函数重载的运算符,则与++a等效的运算符函数调用形式为()。
随机试题
下列能体现国际产品标准化策略的是()
下列哪种器官不属于毒性代谢产物的常见靶器官?
诺氟沙星的作用机制为A.阻断细菌细胞壁肽聚糖的合成B.作用于DNA旋转酶,干扰DNA的复制、修复和重组C.干扰细菌的氧化还原系统,阻断细菌的代谢D.抑制蛋白合成E.抑制mRNA的转录
关于原发性肝癌错误的是
以下哪一项会导致血小板增多
下列对人民警察使用武器说法不符合法律规定的是()。
马卡连柯是苏联早期著名的教育实践家和教育理论家。其教育理论不包括
设f(x)是连续函数,a,b为常数,则下列说法中不正确的是[].
下列叙述中正确的是()。
Itwasaboldideatobuildapowerstationinthedeepvalley,butit______aswellaswehadhoped.
最新回复
(
0
)