- A+
這篇文章主要介紹了c++報(bào)錯(cuò):lvalue?required?as?left?operand?of?assignment,出現(xiàn)此錯(cuò)誤原因,是因?yàn)椋忍栕筮吺遣豢杀恍薷牡谋磉_(dá)式或常量,而表達(dá)式或常量不能作為左值,需要的朋友可以參考下
在編程時(shí)出現(xiàn)報(bào)錯(cuò):
lvalue required as left operand of assignment
出現(xiàn)此錯(cuò)誤原因,是因?yàn)?,等號左邊是不可被修改的表達(dá)式或常量。而表達(dá)式或常量不能作為左值。歸根結(jié)底類似于
3=b;
這種錯(cuò)誤。
而查看代碼發(fā)現(xiàn),是判斷出了問題
1
2
3
|
if (!strA.compare(strB)&&!strC.compare(strD)&&n1=n2){ ???? ... } |
由于n1==n2
漏寫一個(gè)等于號,造成括號內(nèi)由判斷條件變成了賦值語句:左值=n2。而由!strA.compare(strB)&&!strC.compare(strD)&&n1
組成的是一個(gè)布爾值常量。顯然是不能作為左值的。
到此這篇關(guān)于c++報(bào)錯(cuò):lvalue required as left operand of assignment的文章就介紹到這了