回答編集履歴
1
追記
test
CHANGED
@@ -69,3 +69,21 @@
|
|
69
69
|
bar+foobarのアドレス(これって変ですね)がoperator+へ渡されるわけです。
|
70
70
|
|
71
71
|
constがついて変更されないことが判っているので、コンパイラが良きに計らってくれることになってます。
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
---
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
【追記】
|
80
|
+
|
81
|
+
ああ、ごめんなさい。
|
82
|
+
|
83
|
+
operatorの定義はオーバーロードと呼ばれることが多いですが、ご提示された例のようにクラスoperatorの場合、元々定義されていないoperatorを定義しているだけですし、1つしか定義していない時は本来の意味の「オーバーロード」ではないです。
|
84
|
+
|
85
|
+
ご提示の例の場合は、オーバーロードではなく単に演算子を定義しただけです。
|
86
|
+
|
87
|
+
ですので、今回の例についてはオーバーロードは忘れて下さい。
|
88
|
+
|
89
|
+
|