为什么~=是C++中唯一缺少的非逻辑赋值运算符
Why is ~= the only non-logical assignment operator missing in C++?
出于好奇,为什么位运算符~
是C++中唯一没有赋值版本的非逻辑运算符,即~=
?所有关系运算符和按位运算符都有一个赋值版本,但缺少~=
。这有什么特别的原因吗?
对于C++中的所有运算符,请参见例如:http://www.tutorialspoint.com/cplusplus/cpp_operators.htm
进行复合赋值的所有运算符都是二进制。另一方面,Tilde是一元,因此没有简单的方法从中进行复合赋值,因为没有什么可以放在右边。
其他一元操作数,如一元减号和逻辑NOT !
运算符,也没有复合赋值。
相关文章:
- 重载Singly Linked List中的赋值运算符
- 使用赋值运算符重载从类中返回jobject
- 标准库类型的赋值运算符的引用限定符
- 复制构造函数、赋值运算符C++
- 标准::变体的赋值运算符
- 移动赋值运算符;尝试引用已删除的函数.我该如何解决这个问题?
- 非模板 std::reference_wrapper赋值运算符和模板构造函数
- C/C++ 中的逻辑否定和赋值运算符?
- 如果类在 C++ 中具有常量或引用类型的非静态数据成员,为什么编译器不提供默认赋值运算符?
- 引用模板类型的赋值运算符需要非常量重载
- 带有非类型参数的C++模板类:如何重载赋值运算符
- 错误:非静态引用成员"std::ostream&Student::out",无法使用默认赋值运算符
- 错误:非静态引用成员,无法使用默认赋值运算符
- 如果成员具有非平凡的noexcept赋值运算符,则默认的移动赋值不能显式为noexcept
- 重载非类型模板结构的成员结构的复制赋值运算符
- 使用公共命名方法实现非公共赋值运算符
- 通过在移动赋值运算符中使用std::swap来重用析构函数逻辑有意义吗
- 为什么~=是C++中唯一缺少的非逻辑赋值运算符
- 从"int"到非标量类型赋值运算符的转换 - 对象到 int
- "非静态引用成员,不能使用默认赋值运算符"