1,转换函数(conversion function)算法
operator double() const { return (double)(m_numerator / m_denominator); }
对于一个分数,若是与整数或浮点数进行运算,转换成小数或者浮点数是合理的。函数
没有返回类型
2,non-explicit-one-argument ctor
一个分数包括分子和分母,当为整数时,分母为一,因此构造函数的分母的默认值一般为1,这个时候若是一个分数加一个整数,编译器能够将整数转换成分数,再调用+运算符重载
3,conversion function vs. non-explicit-one-argument ctor
同时存在会出错
4,explicit-one-argument ctor
explicit意味着当碰到一个整型数据将不能自动转换成分数
5,智能指针(pointer-like classes)
6,仿函数(function-like classes)
7,namespace
8,类模板(class template)
9,函数模板(function template)
10,成员模板(member template)
11,模板特化(specialization)
12,模板偏特化(partial specialization)
个数的偏
范围的偏
13,模板模板参数(template template parameter)
14,C++标准库
容器
算法
迭代器
仿函数
15,数量不定的模板参数(variadic templates)
16,auto
17,ranged-base for
18,reference
reference一旦初始化就不能表明其余的了,一女不能侍二夫
19,对象模型spa