小编Col*_*cks的帖子

为什么选择二元运算符而不是一元运算符?

对于同时作为一元和二元的运算符,为什么在像这样的表达式中选择二元运算符a@b

经过大量的思考和搜索,我仍然无法回答为什么像这样的东西a+b被解析为二进制表达式而不是a(+b),这显然是胡言乱语。

我不认为上下文无关的语法能够区分这两者,并且试图在这个版本的标准中找到答案并没有给我任何答案。

解析器是否特别选择二进制版本,因为一元版本会是胡言乱语?如果是这样,标准中是否有部分概述了这一点?

c++ parsing expression operators language-lawyer

1
推荐指数
1
解决办法
124
查看次数

标签 统计

c++ ×1

expression ×1

language-lawyer ×1

operators ×1

parsing ×1