- Overload means giving operators new meaning, or adding parameters, or creating essentially.
- 假设我们有如下的一对:
- 现在,如果我想把
position
和speed
加起来并得到一个新的result
,可以利用前面学的,在Vector2
里面加一个add
方法:
- 如果我们想要进行
speed
乘powerup
之类的操作,那么只能给Vector2
增加一个Multiply
的方法,然后这么写:
- 这样会比较难读
JAVA
中只能这么写,但是在C++
中我们可以将其转换为数学运算符
特殊:对
<<
的重载:
与上面不同,需要在类/结构的外面重载- 最后,给这个
structure
加上==
和!=
的重载: