2016-05-04 22 views
0

どのように乗算演算子を両方の方法で乗算できる方法でメンバー関数としてオーバーロードするのですか?例えば、私はこれが動作するようにメンバクラスとして乗算演算子をオーバーロードする方法を知っている:乗算演算子をメンバー関数としてオーバーロードする

MyClass a = a * 2; 

しかし、私もこれに許さメンバ関数たい:

MyClass a = 2 * a; 

どうだろうこれを可能にするために乗算演算子をオーバーロードしますか?

+0

を掛けることができるように、また、使用テンプレートを

MyClass &operator* (int); 

をちょうどそれがフリー機能であるオーバーロード - 2つの無料の機能を実際に。 – SergeyA

答えて

0

はちょうどこのような演算子*オーバーロード:あなたはint型、float型、ダブルまたは何

+0

これらの宣言は無効です。メンバ 'operator *'は1つのパラメータしか取ることができません。 –

+0

ちょうどそれをテストしました、そうです、編集します – Hearner

+0

しかし、今は '2 * a'を扱っていません。 –

関連する問題