【问题标题】:Why --(-val) is not working? [duplicate]为什么 --(-val) 不起作用? [复制]
【发布时间】:2016-01-24 12:34:46
【问题描述】:
int val = -10;
cout << ++(-val) << endl;

输出应该是11。但它给了我一个错误。

【问题讨论】:

  • -val 不是左值。
  • -val 会变成 10
  • --val 会变成 10
  • 你能增加像10++; 这样的文字吗?效果一样。
  • 用例是什么?你可以val = -val + 1.

标签: c++


【解决方案1】:

错误是“需要左值作为增量操作数”。这意味着它只是一个值;它不再代表像“val”这样的特定对象,因此尝试更改它对编译器毫无意义。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-05
    • 2012-10-01
    • 2014-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多