问题标签 [operator-keyword]

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 投票
1 回答
391 浏览

c++ - c ++输入流不等待提取运算符重载的输入

这个问题让我很烦。它不等待输入,而是关闭。我一直试图弄清楚这一点。有任何想法吗?

0 投票
4 回答
1285 浏览

c++ - 重载 + 添加两个指针

我有一个 String 类,我想重载 + 以添加两个 String* 指针。像这样的东西不起作用:

有什么办法可以避免通过引用传递。考虑这个例子:

我需要这种额外的工作。请建议。

0 投票
2 回答
1168 浏览

c# - 使用转换运算符对集合进行类型转换

下面的代码给了我用户定义的转换必须转换为封闭类型或从封闭类型转换,而片段#2 没有......似乎用户定义的转换例程必须转换为包含例程的类或从包含该例程的类转换。

我的替代方案是什么?显式运算符作为扩展方法?还要别的吗?

片段#2

提前致谢!

0 投票
2 回答
23597 浏览

c++ - 运算符 std::string() 常量?

谁能告诉我究竟是什么

代表?

0 投票
6 回答
673 浏览

c++ - C++ 跟踪原始类型值变化

我有一个带有奇怪错误的复杂程序,一些 int 值意外降至零。

所以我想跟踪这个内置类型值,然后我可以轻松调试。

为此,我创建了 ValueWatcher 模板类,因此我可以跟踪值的几乎变化,除非 ValueWatcher 取消引用。(我制作了这些取消引用运算符,因为程序需要 int *, &)

问题是,当客户端代码需要 ValueWatcher 的 int & 或 int * 时, - 它无论如何都可以提供 int & 或 int * 但是 - int * 或 & 不能保存 ValueWatcher 实例,因此无法再跟踪。

有没有办法解决这个问题?我认为它可以通过返回引用或指针类实例来解决,而不仅仅是返回 & 或 * 的内置类型。但我不知道该怎么做。

另外-我不能用调试器运行这个程序。该问题仅在真实环境中发生,并且很难重现。

0 投票
6 回答
1268 浏览

c++ - 赋值运算符重载问题

这个问题让我很困惑。第一段代码可以正常工作而不会崩溃,它将 s1 分配给 s2 非常好。但是第二组代码导致程序崩溃。

任何人都知道为什么会发生这种情况或问题可能是什么?

代码1:(作品)

代码 2:(分配时崩溃)

屏幕类的赋值运算符:

Field 类的赋值运算符:

任何投入将不胜感激 :)

0 投票
3 回答
260 浏览

c# - ``??`` 运算符是否使用短路?

??C# 中的运算符在评估时是否使用短路?

myObject为非空时,ExpressionWithSideEffects()不使用的结果,而是ExpressionWithSideEffects()完全跳过?

0 投票
5 回答
19013 浏览

function - Haskell 运算符与函数优先级

我正在尝试为自己验证有关 Haskell 中运算符和函数优先级的一些信息。例如下面的代码

可以改写为

并且最终会

我的问题曾经是,为什么第一个公式不会被重写为

因为函数优先级总是高于运算符优先级,但我认为我已经找到了答案:运算符根本不允许作为函数的参数(当然,除非你用括号括起来)。这是正确的吗?如果是这样,我觉得很奇怪,在 RWH 或 Learn you a Haskell 或我搜索过的任何其他地方都没有提到这个机制/规则。因此,如果您知道一个地方,其中规定了规则,请链接到它。

-- 编辑:感谢您的快速回答。我认为我的困惑来自于认为运算符文字会以某种方式评估为某些东西,这可能会被函数用作参数。它帮助我记住,中缀运算符可以机械地转换为前缀函数。对第一个配方这样做会产生

其中 ($) 是消费函数是毫无疑问的,而且由于两个公式是等价的,那么第一个公式中的 $ 字面量就不能被 map 消费。

0 投票
2 回答
2886 浏览

c++ - '没有匹配函数' - 尝试插入集合时出错(c++)

我有以下代码:

然而,在运行它时,我得到了这个错误:

main.cpp|36|error: no matching function for call to ‘std::set<asd, std::less<asd>, std::allocator<asd> >::insert(asd*&)’|

我正在使用 g++ 4.4.3

有人可以告诉我哪里出错了吗?我已经尝试破解这个很长一段时间,但似乎无法找到解决方案。谢谢

0 投票
3 回答
318 浏览

php - 当我们使用像这样 -> -> 这样的两个对象运算符标记时,对象结构会是什么?

我见过这样的事情:

这是什么意思?

我会尽量让我的问题更清楚:

当我们有$domain->something;(我们正在访问 $domain OBJECT 的某些属性时。精确吗?

当我们拥有时,$domain->something->run();我们正在告诉我们 $DOMAIN OBJECT 的一些属性来访问 run() 方法。精确的?

那么我们在说什么:echo ($hello->somethingA->somethingB);?访问一些属性属性?这有意义吗?

提前致谢, MEM