operator-overloading 相关问题

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

对运算符的未定义引用<<

我有一个常规课程(不是模板),有一个私人好友操作员<< it's declaration is: std::ostream& operator<<(std::ostream& out, const Position& position...

回答 3 投票 0

根据对象的值类别重载用户定义的转换运算符选择反直觉重载

有人可以解释一下以下示例中使用了哪些语言规则: #包括 #包括 模板 结构持有者{ T 值;

回答 1 投票 0

字符串连接的运算符重载 c#.net

我的自定义数据类型为 公共类AppIdentity { 公共字符串 ID { 获取;放; } 公共静态隐式运算符AppIdentity(字符串用户ID) { var 结果 = new AppIdenty()...

回答 1 投票 0

为什么 Swift 不允许自定义前缀小于和后缀大于运算符?

明确指出是不允许的,但我找不到理由。有没有明确具体的说明原因?

回答 1 投票 0

Python 运算符重载 - 链接“>”无法按预期工作

我正在尝试创建一个可以跟踪该类实例之间的基本连接操作的类。请参阅下面的最小可重现示例 from __future__ 导入注释 从打字我...

回答 1 投票 0

Python集合运算符符号到方法名称的映射是什么?它们与文档不符

我创建了自己的Customset类,它实现了Python集合的几乎所有方法。 当我使用此自定义集的实例时,许多集合运算符都会失败。他们失败的原因类似于:

回答 1 投票 0

朋友无法使用命名空间访问私有成员

使用 MS Visual Studio 2019 重载运算符时出现以下错误<<: Severity Code Description Project File Line Suppression State Error C2248 'Instr...

回答 1 投票 0

复数运算的 C++ 运算符重载

我有一份 C++ 作业,但在开始时遇到困难。目标是“设计一个使用以下复数重载运算符的类:>> << + - * / " My quest...

回答 5 投票 0

如何在 Rust 中实现值和引用的惯用运算符重载?

在实现原始固定大小向量类型(例如 float2)时,我想支持 Add 和 Sub 特征。稍后,我会支持 Mul 和 *Assign。 查找文档并...

回答 3 投票 0

为什么在运算符方法查找期间不考虑引用类型?

今天我偶然发现了 Rust 运算符/方法查找的以下奇怪之处: 使用 std::ops::Add ; 使用 std::fmt::调试; #[导出(调试)] 结构 Foo(i32); 为 &Foo{ 实现添加 输入输出 =...

回答 1 投票 0

如何创建新运算符“=??” F# 中的字段绑定?

我觉得这个很简单,但是我看不懂。 我希望创建一个新的运算符,例如(=??) ,可以像“=”一样用于属性字段绑定。 也就是说,新运算符的用法如下: 我的财产...

回答 1 投票 0

我怎样才能明智地重载新的放置运算符?

C++ 允许重载运算符 new - 全局的和每个类的 - 通常的运算符 new、与 new[] 语句一起使用的运算符 new[] 和放置运算符 new 分别。 这三个中的前两个...

回答 9 投票 0

未定义 __setitem__ 时也可进行赋值

我正在编写自己的矩阵类,它使用 Python Fraction 而不是数字。 我现在需要重载 [],这样我就可以读取矩阵中的特定单元格并将值分配给矩阵中的特定单元格,而无需直接

回答 1 投票 0

在双启动上启动 Ubuntu 时出现问题

当我尝试在 dusl 启动上运行我的 ubuntu 时,我收到消息: /dev/nvme0n1p6:干净,.../.. 文件,.../... 块。 我该如何修复它或进入我的 ubuntu? 我尝试重置几次,也失败了...

回答 2 投票 0

模板化子类的父类 () 运算符的自动返回值

我想知道是否可以在非模板化父类中拥有一个具有自动返回值和模板化子类的运算符? 这是一个例子: #包括 #包括...

回答 1 投票 0

如何在 C++ 中为自定义 UniquePtr 类实现运算符->?

我正在尝试用 C++ 编写自己的 unique_ptr 实现,这是我的 UniquePtr 头文件: #包括 模板 类 UniquePtr { T* 指针; 民众: ...

回答 1 投票 0

使用 std::enable_if<> 来避免模棱两可的模板化二元运算符重载

我想使用 std::enable_if<> 来避免 MyClass*otherT 与 otherT*MyClass 与 MyClassT*MyClassT 中的歧义重载运算符*(T,U)(或重新定义) 可以说 MyClass 声明是: 寺庙...

回答 2 投票 0

尚不支持运算符重载?

根据 Swift 编程指南,运算符重载是允许的,而且实际上非常通用。但是,我无法让它在操场上工作。 例如,可等式

回答 2 投票 0

为什么 Swift 中的运算符重载没有在它所属的类型中声明?

为什么 Swift 中的运算符重载不是在它所属的类型中声明(就像在 C++ 中一样),而是在全局范围内声明?

回答 2 投票 0

是否可以实现虚拟删除运算符重载?

是否可以有虚拟删除运算符? 我说的不是析构函数,我指的是实际的运算符重载。 减去(在大多数情况下)重载 new 和 del 是一个大坏主意的事实......

回答 3 投票 0

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