与后缀表达式和操作符的语法混淆
Confusion with syntax for postfix expressions and operators
在下列情况下,
int i = 0;
int j = 42;
i = j++;
我知道++
是后缀运算符,那么,j
是后缀表达式还是应该说j++
是后缀表达式呢?
语法上,j
和j++
都是后缀表达式。
参见c++ 2003标准第5.2节中的语法:
postfix-expression:
primary-expression
...
postfix-expression ++
(j
也是主表达;j++
不是。)
j
称为后缀表达式没有多大意义,除非您正在讨论解析c++(或C)源代码。
相关文章:
- 1d 智能指针不适用于语法 (*)++
- 助记符和指向成员语法的指针
- 有人能分解一下这个c++模板的语法吗
- C++避免重复声明的语法是什么
- QMetaObject invokeMethod的基于函数指针的语法
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 为什么包含windows.h会产生语法错误,从而阻止类的实例化?(C2146,C2065)
- 单独定义模板化嵌套类方法的正确语法
- 共享指针和具有自定义删除程序的唯一指针之间的语法差异背后的任何原因
- 错误 C2760:语法错误:映射迭代器上意外的标记"标识符",预期的";"
- 为什么我会收到错误 C2143 语法错误:缺少"*"之前的';'?
- 奇怪的代码抛出编译错误模板< J,int aSize=10> C2143:语法错误:在"<"之前缺少";"
- 理解c++ 03操作符重载的标准语法
- 奇怪语法:作用域操作符(::)后面有星号
- c++中逗号操作符的语法用法
- 与后缀表达式和操作符的语法混淆
- ' auto x = type{…} '初始化语法和'显式'转换操作符- clang vs gcc
- 通过std::unique_ptr使用std::map访问操作符[]的正确语法
- 操作符new在c++中的语法对我来说是新的
- c++中操作符重载的语法是什么?