C++におけるオペレーターのオーバーロードのルールは何ですか?
C++の演算子オーバーロードの規則は以下の通りです:
- 既存の演算子の優先順位や結合性を再定義することはできません。
- 彼はとても頭が良いです。
- このお菓子は美味しいですね。
- 彼女はとても頭が良い。
- 彼はボールを投げた後、座って休憩しました。
- サイズ。
- 彼はとても忙しいです。
- “Please make sure to submit your report by the end of the day.”
「日の終わりまでにレポートを提出してください。」 - 私たちは次のプロジェクトを開始する予定です。
- 演算子オーバーロードは、少なくとも1つのオペランドがユーザー定義の型である必要があり、演算子のオペランドの数を変更することはできません。
- 重载运算符可以是类的成员函数或非成员函数,但如果是非成员函数,则至少有一个操作数必须是用户定义的类型。
- メンバー関数としてオーバーロードする場合、オペランドの数は1つ少なくなりますが、非メンバー関数としてオーバーロードする場合、オペランドの数は変わりません。
- 演算子の操作数の意味を変更することはできません。
- 非メンバ関数としてオーバーロードする場合、引数の数はその演算子がすべてのオペランドで行う操作の数と等しくなければならない。メンバ関数としてオーバーロードする場合、引数の数はその演算子がすべてのオペランドで行う操作の数よりも1つ少なくなる。
- 演算子のオーバーロードは、その優先順位や結合性を変更することはできません。
- 過度なオーバーロードは避け、オペレータは元の基本的な意味を保持する必要があります。混乱や不必要な複雑さを防ぐためです。