为什么~=是C++中唯一缺少的非逻辑赋值运算符

Why is ~= the only non-logical assignment operator missing in C++?

本文关键字:非逻辑 赋值运算符 唯一 C++ 为什么      更新时间:2023-10-16

出于好奇,为什么位运算符~是C++中唯一没有赋值版本的非逻辑运算符,即~=?所有关系运算符和按位运算符都有一个赋值版本,但缺少~=。这有什么特别的原因吗?

对于C++中的所有运算符,请参见例如:http://www.tutorialspoint.com/cplusplus/cpp_operators.htm

进行复合赋值的所有运算符都是二进制。另一方面,Tilde是一元,因此没有简单的方法从中进行复合赋值,因为没有什么可以放在右边。

其他一元操作数,如一元减号和逻辑NOT !运算符,也没有复合赋值。