gpt4 book ai didi

java - `+++` 是否只是一个后缀增量,后跟一个中缀(总是)?

转载 作者:太空狗 更新时间:2023-10-29 19:40:39 24 4
gpt4 key购买 nike

考虑针对 Java 发布的 SO 问题 How does the +++ operator work?

我明白了

  1. 没有像 '+++' 这样的运算符,它只是一个后缀增量,后跟一个中缀 add
  2. 这是一种破坏可读性的罪行

我想知道的(只是出于好奇)如果

+++ 它只是一个后缀增量,后跟一个中缀添加 而不是 +++ 它只是一个后缀添加通过前缀增量或其未定义的行为

假设我已经测试了以下程序

#include <iostream>
int main() {
int x = 1;
std::cout<< x+++1 << std::endl;
std::cout<< 1+++x << std::endl;
}

在VC++中,gcc和g++都符合

'+++' its just a post-fix increment followed by an infix add

不是

'+++' its just an infix add followed by a prefix increment

最佳答案

是的,ma​​ximal munch 规则 告诉我们 +++ 被解析为 ++ +(不是后缀跟中缀,而是postfix 后跟一个 + 运算符),它也呈现

1+++x  <----> 1++ + x

非法,因为 1 不是左值。

关于java - `+++` 是否只是一个后缀增量,后跟一个中缀(总是)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15382171/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com