Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
重複の可能性: ++ iがl値と見なされるのに、i ++は考慮されないのはなぜですか?
C ++(およびC)では、次のように記述します。
++x-- ++(x--)
エラーが発生します:インクリメントオペランドとして左辺値が必要です
ただし(++x)--、コンパイルします。私は混乱しています。
(++x)--
後置および前置インクリメント演算子は、左辺値に対してのみ機能します。
を呼び出すと++i、 の値iがインクリメントされてからi返されます。C++ では、戻り値は変数であり、左辺値です。
++i
i
i++(または)を呼び出すとi--、戻り値はiインクリメントされる前の値です。これは古い値のコピーiであり、変数に対応していないため、左辺値として使用できません。
i++
i--
とにかく、たとえコンパイルされたとしても、これをしないでください。