- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章0522 程序设计课件
# include //using namespace std; template T max T a, int b ; double max double a, int b ; void main int i1, i2, i3; double d1, d2, d3; i1 3, i2 9; d1 6.7, i3 10; d2 8.4, d3 7.8; std::cout max i1,d3 std::endl; std::cout max d1,i3 std::endl; std::cout max d2,d3 std::endl; double max double a, int b std::cout double max double, int :; return a b? a:b; template T max T a, int b std::cout template max:; return a b? a:b; void inflate int increase ; int operator[] int index const; 9.5.2 类模板 函数模板、类模板如果希望被多个程序文件(.cpp)使用,则应在头文件中定义类模板(包括成员函数定义)和函数模板。并在使用类模板或函数模板的程序文件中包含该头文件。因为模板在例化时,需要知道类模板和函数模板的完整定义。 9.5.2 类模板 带非类型参数的类模板: template class T, int size class Stack T buffer[size]; int top; public: Stack top -1; bool push const T x ; bool pop T x ; ; template class T,int size bool Stack T,size ::push const T x ...... template class T, int size bool Stack T,size ::pop T x ...... ...... Stack int,100 st1; //st1为元素个数最多为100的int型栈 Stack int,200 st2; //st2为元素个数最多为200的int型栈 9.5.2 类模板 类模板做函数参数 函数的形参类型可以是模板类 或模板类的引用 对应的实参应该是 该类模板实例化的模板类对象 9.5.2 类模板 #include template class Test T i; public: void set T ii i ii; void display cout The value of i is: i endl; ; template Void fun Test test test.display ; int main Test testa; Test testb; testa.set 2 ; testb.set c ; fun testa ; fun testb ; return 0; 模板类 做函数参数 类模板 9.5.2 类模板 类模板与继承 一个类模板在类层次结构中充当的角色: 类模板可以是基类 类模板可以是派生类 类模板可以从模板类派生 类模板可以从非模板类派生 模板类可以从类模板派生 非模板类可以从类模板派生 9.5.2 类模板 示例:从类模板Array 派生一个类模板BoundArray template class Array public : Array ; virtual ~ Array ; virtual T Entry int index const ; virtual void Enter int index, const T value ; protected : T * element ; ; template class BoundArray : public Array public : BoundArray ; virtual T Entry int index const ; virtual void Enter int index , const T value ; ; 结束 #include using namespace std; class point //声明类point public: point float x 0, flo
您可能关注的文档
最近下载
- CNAS-CC02_2013《产品、过程和服务认证机构要求》(2019-2-20第二次修订清稿).pdf VIP
- JJF1376-2012箱式电阻炉校准规范.pdf VIP
- 人教版六年级上册数学第三单元《解决实际问题例5》名师教学设计.doc VIP
- SCR脱硝催化剂体积及反应器尺寸计算表.xlsx VIP
- 房地产市场的数字化转型.pptx VIP
- 妇联换届宣讲培训.pptx VIP
- 穴位埋线疗法治疗失眠的临床观察及效果评价.pptx VIP
- iSecure Center综合安防管理平台 安装部署手册 V1.7.0(1).pdf VIP
- 中级经济师《经济基础》思维导图新版、曲线汇总.pdf VIP
- 动火作业专项培训.pptx
文档评论(0)