![](/img/trans.png)
[英]Why are functions returning references with prefix inc/dec operators are lvalue expressions but not with postfix inc/dec operators
[英]Confusion with syntax for postfix expressions and operators
在以下情況下,
int i = 0;
int j = 42;
i = j++;
我知道++
是posfix運算符,所以, j
是posfix表達式還是應該說j++
是posfix表達式?
從語法上講, j
和j++
都是后綴表達式。
請參閱C ++ 2003標准的5.2節中的語法:
postfix-expression:
primary-expression
...
postfix-expression ++
( j
也是主要表達式; j++
不是。)
主表達式是一種后綴表達式(即使它不包含后綴運算符),這一事實主要是為了方便定義語言語法。 除非您正在談論解析C ++(或C)源代碼,否則將j
稱為后綴表達式沒有多大意義。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.