为什么C++需要运算符同义词?

ash*_*n33 5 c++ operators

在维基百科上查找C++的运算符列表时,我发现了一篇关于运算符同义词的文章:

C++定义[6]关键字作为许多运算符的别名:和(&&),bitand(&),and_eq(&=),或(||),bitor(|),or_eq(| =),xor (^),xor_eq(^ =),不是(!),not_eq(!=)和compl(〜).这些可以与它们替换的标点符号完全相同的方式使用,因为它们在不同名称下不是相同的运算符,而是相应运算符的名称(字符串)的简单标记替换.这意味着表达式(a> 0和flag)和(a> 0 && flag)具有相同的含义.这也意味着,例如,bitand关键字不仅可以用来替换按位运算符和运算符地址,还可以用来指定引用类型(例如,int bit和ref = n) .ISO C规范允许将这些关键字作为头文件iso646.h中的预处理器宏.为了与C兼容,C++提供了头文件ciso646,其中包含无效.

然后我想知道:为什么我们需要这些operator synonyms?如果有人提供一些用例,那就太好了.

Ser*_*eyA 10

所有答案都在这里:http: //en.cppreference.com/w/cpp/language/operator_alternative

基本上,这些是无法用ISO 646字符代码集表示的符号.