C 操作员优先示例
C++ Operator Precedence example
本文关键字:操作员 更新时间:2023-10-16
我试图弄清楚如何根据先例将以下表达式分组:
int x = 0, y = 0;
someValue ? ++x, ++y : --x, --y;
当某个值为0(false)时,评估了第二部分,并且x和y均变为-1。但是,如果某个值为1(true),那么x变为1,但y保留0,这也意味着条件表达的第二部分也被评估,但是只有 - y部分,我认为这是因为逗号运算符,但是我一生无法弄清楚这是如何实现的。任何见解都将不胜感激。
,
具有所有操作员的最低优先级,因此您的表达式被解析为
(someValue ? ++x, ++y : --x), --y;
相关文章:
- <<操作员在下面的行中工作
- C++ 与操作员不匹配<<
- 操作员C++的模棱两可的过载
- C++中>>操作员过载时出现问题?
- NaN 上的宇宙飞船操作员
- 比根<操作员
- SFINAE不能防止模棱两可的操作员过载吗?
- 什么是现实中的"endl"(或任何输出操纵器)?它是如何实现的,它如何与操作员<<一起工
- 为什么"delete"操作员给我访问权限冲突
- 为什么使操作员成为新的专用会打破 std::shared_ptr?
- 在这种情况下是私有的吗?试图使操作员<<过载
- C++操作员过载>>
- 是否有 C++20 浮点数的包装器,使我能够默认宇宙飞船操作员?
- 与异常处理程序中的操作员<<不匹配
- 复印作业操作员说明
- 友谊和操作员+=重载
- >操作员在比较两个C++容器时会怎么做?
- 与操作员比较两个计时时间点
- C++操作员订单评估
- 如何强制新操作员根据我的需要解释语句