"C2106: '=': 左のオペランドが、左辺値になっていません" に関する原因と対処

このコンパイルエラーの原因と対処に関して説明します。

スポンサード リンク

Microsoft Visual C++にて以下のソースでコンパイルエラーが発生します:

コンパイルエラーメッセージ:
error C2106: '=': 左のオペランドが、左辺値になっていません。

ソース(バグ有り):

int main()
{
int i;
1 = i; }


原因:
左のオペランドは l-value である必要があります。

本例では 1 が指定されており、l-value ではありません。

(注意)
l-value:実態の有るオペランド
r-value:実態の無いオペランド

対処:
左のオペランドを l-value を指定します。

本例では 変数 i を指定することによ修正しています。


ソース(修正済み):

int main()
{
int i;
i = 1; }

スポンサード リンク



[コンパイルエラーコード、メッセージに戻る]