问题标签 [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.
c++ - 使用重载的私有&运算符返回对类的引用?
我有一个名为 Property 的类(来自外部库 == 无法修改),它具有私有重载 & 运算符。我在另一个类中使用这个类作为属性,并且(出于理智的原因)我想通过 Get 方法返回对该属性的引用。但是,我遇到了无法处理的“无法访问在类中声明的私有成员”错误。有没有办法绕过它 - 不公开财产。
c++ - 为一对中的一个元素提供小于运算符
修复以下代码的最优雅方法是什么:
解决它的一种方法是将 less< 的定义移动到命名空间 std (我知道, 你不应该这样做。)
另一个明显的解决方案是为 pair< int, area_t > 定义小于<,但我想避免这种情况,并且只能为未定义的对中的一个元素定义运算符。
c++ - 用户定义的转换运算符作为 printf 的参数
我有一个为 TCHAR* 定义用户定义运算符的类,就像这样
我希望能够做类似的事情
甚至
但是在尝试时, printf 总是打印 (null) 而不是值。我还尝试了一个普通的 char* 运算符,以及 const 等的变体。它只有在我明确调用运算符或进行强制转换时才能正常工作,比如
但是,我不想投。如何做到这一点?
请注意,一种可能性是创建一个参数为 const TCHAR* 的函数,以便它强制调用运算符 TCHAR*,但这我也不想实现。
c++ - Operator() as a subscript (C++)
I use operator() as a subscript operator this way:
It works when I get values, but I get an error when I try to write assign a value using
UPD: Error text:
Unhandled exception at 0x651cf54a (msvcr100d.dll) in CG.exe: 0xC0000005: Access violation reading location 0xccccccc0.
vb.net - 'Is' VB.NET 关键字是否与 Object.ReferenceEquals 相同?
VB.NET 关键字是否Is
与 Object.ReferenceEquals 相同?
c# - 为什么要重载 true 和 false 而不是定义 bool 运算符?
我一直在阅读有关在 C# 中重载 true 和 false 的内容,我想我理解这与定义 bool 运算符之间的基本区别。我看到的例子是这样的:
对我来说,这与说:
据我所知,区别在于,通过分别定义真假,您可以拥有一个既是真又是假的对象,或者既不是真也不是假的对象:
我敢肯定这是允许的,但我就是想不出它是什么。对我来说,如果您希望一个对象能够被转换为 true 或 false,那么单个 bool 运算符最有意义。
谁能给我一个以另一种方式做有意义的场景?
谢谢
c# - C# 内存分配
- 在 c# 中使用 operator new 是否可能会失败(例如,如果它需要大内存)?-解决了-
- 以及如何发现它?-解决了-
- 新操作员可能会抛出哪些其他故障?
谢谢
c++ - 运算符 << 重载
我试图重载 << 运算符。我也在尝试练习良好的编码。但是除非我取消注释 using namespace std,否则我的代码不会编译。我不断收到这个错误,我不知道。我正在使用 g++ 编译器。
有人可以告诉我在不使用命名空间 std 的情况下重载 << 运算符的正确方法吗?
java - 运算符和方法有什么区别?
Java中运算符和方法的评估规则有什么区别?
programming-languages - 你会选择什么除法运算符符号?
我目前正在设计和实现一种小型编程语言,作为我正在上课的额外学分项目。我的问题是该语言具有三种数字类型:Long、Double 和 Fraction。分数可以用语言写成真分数或假分数(例如“2 1/3”或“1/2”)。这一事实导致词法分析器无法正确处理“2/3.5”(长/双)和“2/3”(长/长)等问题。我看到的最佳解决方案是更改除法运算符。到目前为止,我认为“\”是最好的解决方案,因为“//”开始评论。
如果您正在设计语言,您会选择“\”吗?
你会选别的吗?如果是这样,是什么?
注意:改变分数的书写方式是不可能的。
在此先感谢您的帮助,
-编辑-
目前的运营商有:
**
(力量)
*
(乘)
%
(模数)
+
(添加)
-
(减法和否定法)
~
(互惠的)
!
(不是)
>
(更大)
<
(较少的)
>=
(大于等于)
<=
(不等)
==
(平等)
<>
(不等式)
&
(和)
|
(或者)
^
(异或)
??
(零合并)
=
(任务)
注意:我的老师没有严格的约束要求;然而,我基本上说服了他,我可以把一个简单的分数计算器变成一种语言。更改分数的语法会违背分数计算器的分数语法,最好避免这种情况。