operator-overloading 相关问题

运算符重载是编程语言的一个特性,它允许运算符的自定义实现,具体取决于所涉及的操作数的类型。有些语言允许定义新的运算符,而其他语言只允许重新定义现有的运算符。

重载元组索引运算符 - C++

如何重载 std::tuple 的索引 [] 运算符?因此,当我有 std::tuple tup 并输入 tup[0] 时,我希望它返回对 get<0>(tup) 的引用....

回答 2 投票 0

“多个运算符“!=”与这些操作数匹配”错误未停止编译?

所以我有一个模板类 TargetVar,它本质上只是另一个变量的包装器,这样我就可以为所述变量设置目标值以及达到该 v 需要多少帧...

回答 1 投票 0


如何在新类中重载fstream操作符? [重复]

我想包装一个新类来生成一个文件,并对新文件进行一些自动资源回收和一些额外的操作。 所以我开设了一个新课程,例如 类 TmpFile { 私人的: std::字符串

回答 1 投票 0

为什么我的类使用了错误的operator()?

考虑下面的 Foo 类,它提供了 2 个运算符 (),一个用于读取,另一个用于写入。 #包括 #包括 模板

回答 1 投票 0

如何在Delphi中重载记录分配运算符

我想制作使用动态数组的记录类型。 使用这种类型的变量 A 和 B,我希望能够执行操作 A:= B (和其他)并能够修改内容 o...

回答 2 投票 0

如果泛型类型具有这些运算符,如何重载泛型类上的运算符?

假设我有一个通用矩阵类型: 类矩阵 { 私有 T[,] _data; } 当且仅当 T 有一个重载的 + 运算符时,是否可以重载 Matrix 上的 + 运算符?

回答 1 投票 0

Clang-Tidy 不明确:operator++(int) 应该返回什么?

因此,我一直在为一项作业开发 Vector 实现,并在实现迭代器时注意到一些奇怪的 Clang-Tidy 建议。 迭代器必须有迭代器&运算符...

回答 1 投票 0

有没有办法覆盖 Rust 类型的赋值运算符? [重复]

我的问题如下:我想设置一个具有更有限值范围的类似原始结构。如在 #[repr(透明)] 结构 MyLimitedInt { 五:i8, } 但要确保 v 的值为

回答 1 投票 0

C++ 运算符的泛型重载<< for STL containers produces ambiguous overload error with strings

我的意思是编写一个通用的运算符重载<< to print STL containers. I put together code below. Whenever operator<< involves a string, it produces a compilation error ambiguous ove...

回答 1 投票 0

为什么这个运算符不能被继承?

我有以下代码: #包括 基类{ 民众: 虚空运算符()(int &x) = 0; 无效运算符()(int &&x){ 运算符()(x); } }; 班级

回答 1 投票 0

运算符重载不可与 flutter 中的操作数互换

我正在 flutter 中制作一个自定义数字类,并希望在该类与普通整数和双精度数之间进行基本算术运算。 所以我在类定义中重载了乘法运算符并且

回答 1 投票 0

如何 std::cout << a type which has many (ambiguous) user-defined conversion functions?

这里我有一个 C++ 类,它处理远远超出 long long 的大数。它将数据存储为 std::string。现在我这里有很多很多转换器: 类 BigInt { 私人的: std::字符串x;

回答 1 投票 0

有没有办法在Python中重载+=? [重复]

我知道 __add__ 方法可以覆盖 plus,但是当我用它来覆盖 += 时,我最终遇到了两个问题之一: 如果 __add__ 改变了 self,那么 z = x + y 当我真的不...时会变异x

回答 1 投票 0

为什么`__rsub__`要反向减?

我有继承自列表的自定义类。 CustomList 实例支持它们之间的减法以及与常规列表的减法。 CustomLists/lists 的相应元素被减去...

回答 1 投票 0

如何正确超载<< operator for an ostream? [duplicate]

我正在用 C++ 编写一个用于矩阵运算的小型矩阵库。然而,我的编译器抱怨了,而以前却没有。该代码被搁置了六个月,在这期间我升级了我的

回答 6 投票 0

如何以两种不同的方式为后缀 a++ 和前缀 ++a 重载运算符 ++? [重复]

如何以两种不同的方式为后缀 a++ 和前缀 ++a 重载运算符 ++?

回答 5 投票 0

c# 中的运算符重载约束

Q) 为什么 C# 中的运算符重载需要“public”和“static”? 尝试过这篇文章 https://learn.microsoft.com/en-us/archive/blogs/ericlippert/why-are-overloaded-operators-always-static-...

回答 2 投票 0

为什么重载算术运算符 minus 与 valgrind 冲突?

在为十进制数类实现运算符重载时,我遇到了一个问题。我使该运算符保持不变,因为没有任何参数发生变化。但 Valgrind 给出了以下内容

回答 1 投票 0

当 cppreference 说 * 应该作为“对称”的自由函数重载时,“对称”是否意味着交换性?

我实现了一个vec3类: 结构体 vec3 { 双 x = 0,y = 0,z = 0; 自动&运算符*= (double d) {x *= d; y*=d; z*=d;返回*这个;} }; 自动运算符* (const vec3 &a, dou...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.