私のC++11標準(ISO / IEC 14882:2011(E))のコピーでは、代入演算子の定義には次のものが含まれています。
単純な代入(
=
)では、式の値は、左のオペランドによって参照されるオブジェクトの値を置き換えます。
これは、「式の値」ではなく「右のオペランドの値」と言うべきではありませんか?現時点ではあいまいに見え、「代入式の値」を意味すると簡単に解釈できます。
「式」というフレーズは、[expr.ass]の別の段落でもあいまいに使用されています。
左のオペランドがクラス型でない場合、式は暗黙的に左のオペランドのcv非修飾型に変換されます(第4節)。
ここでも「正しいオペランド」という意味だと思いますよね?
これは、私が見つけることができる代入演算子の効果の唯一の定義でもあります。私は何かが足りないのですか?