面向对象高级编程(下)-- 第一周学习笔记(Boolan)
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,对象模型