C++期末考试重点.doc
上传人:sy****28 上传时间:2024-09-15 格式:DOC 页数:5 大小:15KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

C++期末考试重点.doc

C++期末考试重点.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

【例1.7】设计一个简单的字符串类CString,类中有两个数据成员,分别表示字符串的长度和字符串的内容。定义一个构造函数和一个析构函数,成员函数GetLength()返回字符串长度,成员函数GetContents()获得字符串的内容,重载成员函数SetContents()可以改变字符串的值。字符串类类图#include<iostream.h>#include<string.h>classCString{public:CString();//默认构造函数CString(char*s);//带参数的构造函数~CString();//析构函数intGetLength();//得到字符串的长度voidGetContents(char*str);//得到字符串的内容voidSetContents(intlen,char*cont);//重新设置字符串voidSetContents(char*cont);//重载成员SetContents(),重新设置字符串private:intlength;//字符串长度char*contents;//字符串内容};CString::CString(){length=0;contents=NULL;cout<<"字符串对象初始化:默认构造函数"<<endl;}CString::CString(char*s){length=strlen(s);contents=newchar[length+1];strcpy(contents,s);cout<<"字符串对象初始化:一个参数的构造函数"<<endl;}CString::~CString(){cout<<contents<<"被销毁"<<endl;if(contents!=NULL)deletecontents;}intCString::GetLength(){returnlength;}voidCString::GetContents(char*str){strcpy(str,contents);}voidCString::SetContents(intlen,char*cont){length=len;if(contents!=NULL)deletecontents;contents=newchar[len+1];strncpy(contents,cont,length);contents[length]='\0';cout<<"两个参数的SetContents函数"<<endl;}voidCString::SetContents(char*cont){length=strlen(cont);if(contents!=NULL)deletecontents;contents=newchar[length+1];strcpy(contents,cont);cout<<"一个参数的SetContents函数"<<endl;}voidmain(){CStringstr1,str2;//两次调用默认的构造函数CStringstr3("第三个字符串");//调用带参数的构造函数str1.SetContents("第一个字符串");//调用一个参数的SetContents函数str2.SetContents(20,"第二个字符串两个参数");//调用两个参数的SetContents函数inti=str1.GetLength();charstring[100];str1.GetContents(string);cout<<i<<""<<string<<endl;i=str2.GetLength();str2.GetContents(string);cout<<i<<""<<string<<endl;i=str3.GetLength();str3.GetContents(string);cout<<i<<""<<string<<endl;}【例4.14】将1~100之间的所有偶数存入二进制文件data2.dat中。#include<fstream.h>voidmain(void){ofstreamout("data2.dat",ios::out|ios::binary);//Line1if(!out){cout<<"data2.dat\n";return;}for(inti=2;i<100;i+=2)out.write((char*)&i,sizeof(int));out.close();cout<<"\n程序执行完毕!\n";}1.利用模板函数的基本功能