[英]assigning a variable to pre-increment variable and post increment variable?
以下兩個作業有什么區別?
#include<iostream>
using namespace std;
int main(){
int a=10,i=0;
++i = a //COMPILES WITHOUT ERROR
i++ = a //GIVES AN ERROR LVALUE NEEDED
}
為什么第二個作業會產生錯誤?
++i
返回的新值i
的遞增后。 該值是一個左值 ,在這種情況下稱為i
。 修改i
當然是允許的。
但i++
回報的原值i
的遞增前。 該值是一個rvalue ,即一個未命名的臨時值。 C ++中不允許修改右值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.