问题标签 [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.
scala - Scala - 前缀一元运算符
我最近给了 Scala 第二次机会,并从我经常实现的项目开始(使用函数式或伪函数式语言):命题逻辑(以及后来的谓词逻辑)的自动推理器。
现在,我试图在语言本身中尽可能地获得命题逻辑的符号,并且我已经做到了这一点 - 使用隐式转换(String -> Atom):
函数“and”和“implies”(以及“or”和“equivalent”)是调用相关案例类构造函数的简单方法。但是,在实现“不”时,我遇到了以下两种表示法中的任何一种:
有没有办法欺骗 Scala 接受所需的:
最好不要将类“Not”重命名为“not”,因为将来我可能会称它为“¬”或其他名称。
c++ - C++ 中的运算符重载(有和没有朋友)
嘿,我想知道这两个运算符定义之间的区别:
1:
2:
据我了解,用于:
希望对差异进行一些解释,谢谢!
c++ - 零值上的一元运算符-() - c++
我编写了这段代码来重载矩阵类上的一元运算符:
当我在 Visual Studio 中使用调试器运行我的程序时,它向我展示了当在 double 上完成操作时,它会插入数字 -0.00000 的结果矩阵。它是一些奇怪的 VS 显示功能,还是我应该小心处理的东西?
c++ - 禁用类指针递增/递减运算符
例如代码:
我需要在编译阶段避免指针递增/递减运算符:
perl - 架构的一元 NOT/Integersize
来自“精通 Perl/第 16 章/位运算符/一元非,~”:
一元 NOT 运算符(有时称为补码运算符)~,根据体系结构的整数大小返回值的按位否定或 1 的补码
为什么下面的脚本会输出两个不同的值?
输出:
c++ - 如何在 C++ 中为前向声明的类型实现一元运算符重载?
以下代码无法在 Visual Studio 2008 中编译。当 Foo1 在 Bar 之前定义时,如何让它允许 Foo1 类中的一元运算符将其转换为 Bar?
ruby - Ruby 中的一元加运算符有什么意义?
除了用一元减号做一个很好的对称性之外,为什么在Numeric
类上定义一元加号运算符?它是否有一些实用价值,除了会引起混乱,允许编写类似的东西++i
(与大多数非 Ruby 主义者不同,不会增加i
)。
我可以想到在自定义类上定义一元加号可能很有用的场景(例如,如果您正在创建一些性感的 DSL),因此能够定义它是可以的,但为什么它已经在 Ruby 数字上定义了呢?
ruby - 为什么要在 ruby 的属性上使用一元运算符?即 &:first
作为一种习惯,我会尝试定期阅读一些其他人的源代码并在要点中对其进行评论。现在我正在阅读 sinatra 的基础应用程序并发现了一段有趣的代码(这是他们的 Request 类的一部分)
我不明白的部分是 &:last 和 &:first 在做什么?!?它看起来像疯了!
c - 一元运算符如何在 C 中工作,您不能预先增加零
我对一元运算符如何在 C 中用于补码、逻辑否定和预递增感到困惑。
一个补码对 0 起作用,如下所示:
逻辑否定对 0 起作用,如下所示:
但是 Preincrement against 0 会产生编译器错误:
考虑到它们都是一元运算符,为什么这三个都不工作?