资源描述:
《第09章_群体类和群体数据的组织.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、本章主要内容类模板String类群体类群体数据的组织类模板用于设计一个通用类,使这个类的数据成员的类型、成员函数的参数能够按照需要进行改变(即参数化)声明类模板的一般形式为:templateclassclass_name{}其中,Ttype是一个标识符,代表所声明的类模板中参数化的类型名。注意:模板类的成员函数必须是函数模板。定义了类模板以后,就可以创建这个类的实例:Class_name对象1,…,对象n;type用具体的数据类型代入,系统根据代入的数据类型生成所需的类,并创建该类的对象。9.1类模板//E
2、X9_1.cpp:演示类模板的定义和使用#include#includestructstudent//声明一个结构体类型{intid;intscore;};template//声明一个类模板classbuffer{private:Ta;intempty;public:buffer(void);//声明buffer类的构造函数Tget(void);voidput(Tx);};template//定义buffer类的构造函数模板buffer::buffer(void
3、):empty(0){}template//定义成员函数get模板Tbuffer::get(void){if(empty==0){cout<<"thebufferisempty!"<//定义成员函数put模板voidbuffer::put(Tx){empty++;a=x;}voidmain(void){students={1022,78};bufferi1,i2;//声明整型对象i1,i2bufferstu1
4、;//声明结构体对象stu1bufferd;//声明双精度对象di1.put(13);//对象i1调用put执行了empty++i2.put(-101);//对象i2调用put执行了empty++cout<5、cout<6、对象的成员函数调用与重载运算符(>>、<<、+等)对字符串进行赋值、连接、复制、查找、交换等。基本形式为<对象名>.<成员函数>string类//EX9_2.cpp:演示string类的应用#include#includeusingnamespacestd;voidmain(){strings1("Hello"),s2,s3,s4;//定义string对象s2=s1;//用"="号进行赋值(重载运算符=)s3.assign(s1);//调用成员函数assign()进行赋值cout<<"s1="<7、data()<<",s2="<