C++primer 阅读笔记-模板与泛型编程(成员模板)
2015-09-02 18:58
399 查看
成员模板
一个类(类模板或者普通类)可以包含本身是模板的成员函数成员模板不能是虚函数
普通类的成员模板
下例为一个类似于unique_ptr的默认删除器的类希望删除器适用于任何类型,所以将调用运算符定义为一个模板
成员模板也是也模板参数列表开始
class DebugDelete{ public: DebugDelete(std::ostream &s = std::err):os(s){} template<typename T> void operator(T *p) const {os << "deleting unique_ptr"<<std::endl;delete p;} private: std::ostream &os; } //销毁p指向的对象 //实例化DebugDelete::operator()<int>(int *); unque_ptr<int, DebugDelete>p(new int, DebugDelete());
类模板的成员模板
类和成员各有自己的、独立的模板参数在类模板外定义一个成员模板时,必须同时为类模板和成员模板提供模板参数列表。类模板参数列表在前,后跟成员模板参数列表
实例化与成员模板
实例化一个类模板的成员模板,必须同时提供类和函数模板的实参相关文章推荐
- C++Primer笔记之关联容器的使用详解
- 如何更好的利用《C++ Primer》学习C++?
- C++primer 第十章 单词转换程序 运行不了解决办法
- 头文件中包含const与非const对象
- 几个标准库类型的简单使用
- C++Primer _vector _习题3.13
- C++Primer _vector _习题3.14
- Sales_item.h (C++ Primer 第五版)
- forward_list未定义+=符号,而改用advance()函数改变迭代器
- C++ primer 笔记
- C++Primer学习笔记
- 重读c++primer (第五版) -- 引子
- (福利)”C++Primer笔记“和”Java经典入门笔记“
- C++复习学习提纲
- [C++ Primer]第一章 快速入门
- C++primer 阅读笔记-模板与泛型编程(模板参数)
- C++primer 阅读笔记-模板与泛型编程(类模板)
- C++ Primer 第(1-3)章一句话知识点总结
- C++Primer(第十一章课后习题程序题源代码)
- C++Primer(第10章课后程序题源代码)