Geekband-first week of part3

1.模板是通过泛型的形式表现或运行

2.模板可以节省代码量,通过一族泛型参数的类或者函数可以体现

3.c++主要有类模板和函数模板

4.在模板定义中class和typename定义型别参数,不过建议使用typename,更加直观

5.模板实例化分为显式和隐式,显示的是在代码中明确的要对型别参数进行实例化,for example:

std::max (1,2);隐式的是在首次使用时根据具体情况使用一种合适的型别进行实例化,for example: std::max(1,2);

6.编译器对模板的处理,编译两次:first--没有实例化之前,检查模板代码本身是否有语法错误,second--实例化期间,检查对模板代码的调用是否合法

7.参数推导原则:first:模板参数是由传递给模板函数的实参巨顶的 second:不允许自动类型转换(每个T必须严格匹配)

8.模板函数可以重载,也可以和同名非模板函数共存(各种因素相同的条件下,编译器会优先调用非模板函数共存),对于类别不同,编译器处理如下:

9.类模板成员函数的定义:

10.类模板的特化:

11.类模板特化的作用:

12.类模板的偏特化

13.偏特化的注意事项

14.类模板可以有默认值

15.操作符重载的规则

16.关联特性(traits)

17.迭代器

18.Vector

19.Deque

20.List

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 把《C++ Primer》[https://book.douban.com/subject/25708312...
    尤汐Yogy阅读 9,536评论 1 51
  • STL和泛型编程 Week6 Notes 1.模板概念和模板函数 C++模板简介 概观 为什么会有模板这个概念 S...
    古来征战几人回阅读 302评论 0 0
  • C++ 模板简介 一、模板 使用模板的目的就是能够让程序员编写与类型无关的代码。 模板是一种对类型进行参数化的工具...
    MinoyJet阅读 2,412评论 0 12
  • 项目地址 C++类模板(1) 与函数模板类似,类也可以通过参数泛化,从而可以构建出一组不同型别的类实例(对象) 类...
    偷天神猫阅读 924评论 0 1
  • 每晚十一点左右,在大家即将开始休息的时候,马二总是无心睡眠、异常的兴奋,总习惯性的拿起自己已经用 了两三年破旧不堪...
    蓝梦奇阅读 792评论 25 32