同じパラメータリストを使用して演算子を2回オーバーロードします。C++のオーバーロード演算子を2回、非const参照を1つ戻し、その他のconst参照は、どのような設定ですか?
T& operator()(par_list){blablabla}
const T& operator()(par_list){blablabla}
私は()演算子を呼び出すときに、どの関数がどのような嗜好や状況に基づいて呼び出されるのでしょうか? const関数の下でcall()を呼び出すと、const T &が必要です。
私は、C++がそのような状況をどのように処理し、どのようにデフォルト設定が動作するのか不思議です。
ありがとう
用語がある*過負荷*、なし。 – chris
C++戻り値の型によるオーバーロードを禁止します。人はそれができる/できないことに入ることができますが、それは問題ではありません。 1つのトリックは、戻り値の型がconstのときにメソッドをconstにすることです。オーバーロードする可能性があります。私の記憶はconstメソッドが優先され、非constはconst呼び出しが正当でないと呼ばれます。 – Joe