题目内容

请使用VC6或使用[答题]菜单打开考生文件夹proj3下的工程文件proj3。本题创建一个小型字符串类,字符串长度不超过100。程序文件包括proj3.h、proj3.cpp、writeToFile.obj。补充完成proj3.h,重载复合赋值运算符+=。 要求: 补充编制的内容写在“//********333********”与“//********666********”之间,不得修改程序的其他部分。 注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为obj文件,并且在本程序中调用。 //proj3.h #include <iostream> #include <iomanip> using namespace std; class MiniString {public: friendostream &operator << (ostream&output, const MiniString &s ) {output << s.sPtr; return output; } friend istream &operator >> ( istream&input, MiniString &s ) {char temp [100]; //用于输入的临时数组 temp[0] = ’\0’; input >> setw(100 ) >> temp; int inLen = strlen(temp); //输入字符串长度 if( inLen!= 0) { s.length = inLen; //赋长度 if( s.sPtr! = 0) delete []s.sPtr; s.sPtr = new char [s.length + 1]; strcpy( s.sPtr, temp ); //如果s不是空指针,则复制内容 } else s.sPtr [0] = ’\0’; //如果s是空指针,则为空字符串 return input; } MiniString ( const char * s=""):length (( s!= 0 )strlen(s) : 0 ){ setString(s ); } ~MiniString() { delete [] sPtr; }//析构函数 //************* 333*********** //+=运算符重载 //************* 666*********** private: int length; //字符串长度 char * sPtr; //指向字符串起始位置 void setString( const char * string2 ) //辅助函数 { sPtr = new char [length + 1]; //分配内存 if ( string2 ! = 0 ) strcpy( sPtr, string2 ); //如果string2不是空指针,则复制内容 else smtr [0] = ’\0’; //如果string2是空指针,则为空字符串 } }; //proj3.cpp #include <iostream> #include <iomanip> using namespace std; #include "proj3.h" int main () { MiniString str1 ("World"), str2 ("Hello") ; void writeToFile (char * ) ; str2 + = str1; //使用重载的+=运算符 cout << str2 << "\n"; writeToFile (""); return 0; }

查看答案
更多问题

用两种不同成分的培养基(分别为701批与702批)分别培养鼠疫杆菌,重复试验单元数为5个,将48小时内各试验单元上生长的活菌数记录如下701批:48 84 90 123 171;702批:90 116 12 422 584。那么该资料的类型为

A. 等级资料
B. 计量资料
C. 计数资料
D. 以上均是
E. 以上都不是

标准正态分布的均数与标准差分别为

A. 0与1
B. 1与0
C. 1与1
D. 1.96与2.58
E. 以上都不是

四分位间距

A. 数值越大,变异度越小
B. 考虑到了每个观察值的变异度
C. 是中间50%数据的间距
D. 没有极差稳定
E. 以上都不是

抽样误差是指

A. 样本值和样本值之差
B. 个体值和样本值之差
C. 个体值和总体值之差
D. 样本值和总体值之差
E. 以上都不是

答案查题题库