C++ 运算符重载与继承深入解析
1. 运算符重载相关问题与练习
在 C++ 编程中,运算符重载是一项强大的特性,它允许我们为自定义类型重新定义运算符的行为。下面是一些相关的问题和练习。
1.1 基础概念问题
- UML 术语 :在 UML 中,成员数据项被称为属性(attributes),成员函数被称为操作(operations)。
- UML 类图矩形 :表示类的矩形通常是直角的,而不是圆角的,所以“rectangles that symbolize classes have rounded corners”这句话是错误的。
- 类的导航性 :从类 A 到类 B 的导航性意味着类 A 的对象可以调用类 B 对象中的操作,答案选 a。
1.2 运算符重载练习
以下是一系列运算符重载的练习,涵盖了不同的数据类型和运算符。
1. 距离类减法运算符重载 :为距离类添加重载的 - 运算符,用于减去两个距离。假设不会用较大的数减去较小的数,即不允许出现负距离。
2. 字符串类 += 运算符重载 :用重载的 += 运算符替代字符串类中的 + 运算符,允许像 s1 += s2;
这样的语句,并且结果可用于其他计算,如 s3 = s1 += s2;
。
3. 时间类 + 运算符重载