天天看点

[C/C++] 第14章 重载操作符与转换 《C++ Primer》

第14章:重载操作符与转换

——这章的学习笔记比较少,因为将本章看了一遍后,感觉可以收益的地方,的确不算多。

@学习摘录159:输入和输出操作符最主要区别

——输入和输出操作符有如下区别:输入操作符必须处理错误和文件结束的可能性。

第九节:转换与类类型

@学习摘录160:避免转换函数的过度使用

——转换操作符有两个潜在的缺陷:

——1. 定义太多转换操作符可能导致二义性代码;

——2. 一些转换可能弊大于利。

——避免二义性最好的方法是:

——保证最多只有一种途径将一个类型转换为另一类型。

——做到这一点,最好的方法是限制操作符的数目,尤其中,到一种内置类型应该只有一个转换。

@学习摘录161:转换和操作符

——如果类既定义了转换操作符又定义了重载操作符,容易产生二义性。

——1. 不要定义相互转换的类,即如果类Foo具有接受类Bar的对象的构造函数,不要再为类Bar定义到类型Foo的转换操作符。

——2. 避免到内置算术类型的转换。

《C++ Primer》第四部分学习笔记汇总——面向对象编程与泛型编程

——继承,动态绑定,数据抽象,函数模板

上一篇: effective C++