问题标签 [unary-operator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 涉及一元运算符的 C++ 中的表达式求值
在这些情况下,为什么 C/C++ 不按从左到右的顺序计算表达式:最初 x=1
如果执行正常评估(++ 的优先级高于 +),则结果应为 1 + 2 = 3
相似地:
为什么结果不同?
更多案例:
C/C++ 遵循什么规则呢?
ruby - 一元运算符的运算符优先级
像这样的一些关于运算符优先级的信息源说,像!
, ~
, +
,这样的一元运算符比赋值-
具有更高的=
优先级。但是,以下表达式是可能的:
考虑到这些结果,我能想到的唯一可能的解释是这些一元运算符的优先级低于赋值。如果是这样,那就意味着我上面提到的信息是错误的。哪个是对的?有不同的解释吗?
java - 不同的间距如何影响一元运算符?
谁能解释一下不同的间距如何影响一元运算符?
.
java - 一元运算符优先考虑运算符优先级或最大蒙克规则
在这里,我有以下代码:
现在 的值x
将是 2,因为a
它首先被后递增,然后被添加到b
.
以下是编译后的字节码:
所以表达式将等价于x = (a++) + b
。
现在另一个表达式x=a++++b
,由于最大咀嚼规则而无法编译。它将成为x = (a++) ++ b
编译错误。
上述行为是x=a+++b
由于运算符 ++ 的优先级还是由于最大咀嚼规则?
ruby - Ruby 运算符“+”的行为取决于代码中的间距?
我遇到了一些奇怪的事情(我使用的是 Ruby 1.9.1)。案例场景为:
为什么第二种情况下的“+2”被视为“正2”而不是“加2”?
r - issue when adding geom_text in ggplot2 when plotting ggmap
my issue is related to when we add the geom_text() in our ggplot, it gives me an error. I referred to the below links but wasn't able to figure my problem out.
Questions visited: geom_text not working when ggmap and geom_point used
With the above code, I get the following output:
Then if I uncomment the geom_text() function and rerun the code, I get the following error:
Should you choose to answer, do leave a brief explanation as to why this error happens. Would appreciate it.
Thank you.
c# - 覆盖 Equals 和类型转换
在下面的示例中,第三个评估返回 false,一切都很好,但第四个示例返回 true。
但是,我不太明白这是如何工作的,默认情况下Object.Equals
比较对象相等的两个引用,并且看到 asa
和b
都指向一个唯一的一个字符串的实例,这应该返回 false,它在第三个示例中执行此操作,但在第四个示例中没有。
现在我明白了为什么它在第二个示例中返回 true,因为该.Equals()
方法在字符串类中被覆盖,但在第四个示例中,我们将此字符串转换为对象。那么在这种情况下
它不会调用吗?Object.Equals
c - 如何为 YACC 中的后自增/自减运算符编写语法?
这是我的 yacc 语法。我试图让一元减号工作。x——例如。
但是,当我尝试在我的测试文件上运行它时
我在第 num1-- 行收到 yyerror;
yyerror 在我能找到的任何细节上都非常模糊。我只能发现它是在遇到输入错误时调用的。我不知道该错误是否来自我对应该如何编写语法的误解,或者是什么。我有一个指向非法字符的程序,它说问题来自行中的第一个“-”符号。我想知道在哪里可以找到我的答案或者您是否看到错误的任何想法。
这是我的 lex 文件:
c - c中是否有既是一元又是二元的运算符?
c中是否有既是一元又是二元的运算符?这个问题是在一次采访中被问到的。
operators - 无法为元组定义一元运算符
看来您不能为元组定义一元运算符。考虑这个例子:
我得到一个错误:找不到接受提供的参数的“-”的重载。这是预期的行为吗?
值得注意的是,二元运算符工作正常,例如,您可以==
为元组定义它并按预期工作。