回答編集履歴
1
誤表記修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
> ① case1の+演算子の定義については -> Clock型でreturnで返り値を定めているのに、何故、case2においては、返り値の型もreturnもせずにtac.toString()で返り値の23:00が得られるのでしょうか?両者の違いがどうしてもわかりません。
|
2
2
|
|
3
|
-
これは(2)と密接に関係するのですが、**case2** の `
|
3
|
+
これは(2)と密接に関係するのですが、**case2** の `lhs` は参照渡しとなっているためです。
|
4
4
|
|
5
5
|
`+=`演算子の左側の型(この場合 `Clock`) のインスタンスに対して直接 `advance(min)` を実行しているため、値が直接書き換わっています。
|
6
6
|
|