问题标签 [binary-operators]

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.

0 投票
5 回答
3167 浏览

c++ - C++ 二元运算符的优先顺序

以什么顺序测试以下参数(在 C++ 中)?

我刚刚在我们的应用程序中看到了这段代码,我讨厌它,我想添加一些括号来澄清排序。但是在我知道我将它们添加到正确的位置之前,我不想添加括号。

编辑:接受的答案和跟进

这个链接有更多信息,但它的含义并不完全清楚。看来|| 和 && 具有相同的优先级,在这种情况下,它们是从左到右计算的。

http://msdn.microsoft.com/en-us/library/126fe14k.aspx

0 投票
11 回答
765480 浏览

language-agnostic - 什么是按位移位(bit-shift)运算符,它们是如何工作的?

我一直在尝试在业余时间学习 C,其他语言(C#、Java 等)具有相同的概念(并且通常是相同的运算符)...

我想知道的是,在核心层面上,位移 ( <<, >>, >>>) 有什么作用,它可以帮助解决什么问题,以及在拐弯处潜伏着什么陷阱?换句话说,绝对是初学者的移位指南。

0 投票
4 回答
2670 浏览

c - 为什么这种按位右移似乎不起作用?

有人可以向我解释为什么面具根本没有向右移动吗?你可以用任何东西代替那个 1 ,结果是一样的。

0 投票
5 回答
7824 浏览

c++ - c++ 在一个函数参数中使用按位或“|”的多个枚举

我最近遇到了一些可以像这样传递多个枚举的函数:

因为我认为这是一种非常优雅的方式,所以我尝试自己实现类似的东西:

现在,如果我尝试使用 One | 调用该函数 二,我希望两个开关盒都被调用。我不太擅长二元运算符,所以我真的不知道该怎么做。任何想法都会很棒!

谢谢!

0 投票
2 回答
76 浏览

javascript - (变量或 {})是否可以在 Javascript 中跨浏览器工作?

以下构造中的if(variable)子句检查列表/数组是否为空/未定义,以避免异常:

但是 JS 语法允许像这样的表达式

所以我可以将代码缩短一行,并且仍然检查数组/对象:

问题本质上是:null/undefined || []/{}表达式是否在所有浏览器中都返回后者?

编辑:发现大括号更适合for (var k in list || {})迭代,因为数组(方括号)会导致迭代并引发异常。

0 投票
2 回答
1205 浏览

asp.net-mvc - 如何将 entityframework 对象的自定义比较(二元运算符 Equal 的定义)写入 int?

我收到此错误:

ex = {"二元运算符 Equal 没有为类型 'MySite.Domain.DomainModel.EntityFramework.NickName' 和 'System.Int32' 定义。"}

我试图做的是选择所有NickNameId = someIntPassedIn...问题是NickNameId是一个外键,所以当它比较时它someIntPassedInNickNameId拉出引用的整个NickName对象NickNameId并尝试比较int目的。

我需要一个解决方案来允许它将 int 与 NickName 对象的 Id 进行比较......所以

A)如何定义二元运算符 Equal 来比较这两个对象

或者

B)我怎样才能将它直接与 id 而不是整个对象进行比较?

您不必阅读此内容,但这里是 SelectAllByKey 方法以防万一:(
我传入了“NickNameId”和“1”)

如果您需要更多信息,请告诉我。

谢谢,
马特

0 投票
5 回答
352 浏览

c - 我不明白的预处理器宏

我目前正在查看我在网上找到的一些源代码,它以我不理解的方式使用预处理器宏。它实现了四边数据结构。希望有人可以为我澄清事情!

这就是它们的使用方式:

这只是概述我遇到的问题的摘录。整个事情可以在这里找到

0 投票
2 回答
183 浏览

c# - 我的数学真的很差,我想做一个二元运算

我有以下代码:

我非常想知道它到底做了什么,但我很高兴知道如何构建一个bool HasHash( int val )告诉我 m_Hash 是否有那个数字的...

像这样的东西?

0 投票
2 回答
616 浏览

c# - C#:二元运算符重载:不包含类型?

无论如何,在没有包含类型或使用扩展方法的情况下重载二元运算符?

我想覆盖==两个字节数组之间的运算符,并且希望没有扩展方法。

任何帮助是极大的赞赏。

0 投票
2 回答
819 浏览

binary - 二进制补码加法问题

我正在研究二的补码加法。基本上我需要显示 -27 到 +31 的加法,两个数字都是使用 6 位的二进制数。

我的问题是进位操作。也许我做得不对或其他什么。

-27 二进制:111011
+31 二进制:011111

我认为的答案应该是:
+4 是二进制:000010

这就是我正在做的事情:

在我看来,这是 52 而不是 4。

我究竟做错了什么?