考虑以下替代运算符表示形式:(取自here)

Primary Alternative
&&      and
&=      and_eq
&       bitand
|       bitor
~       compl
!       not
!=      not_eq
||      or
|=      or_eq
^       xor
^=      xor_eq

为什么存在这些替代运算符表示形式?我喜欢它们,但我试图找到理由让我的经理允许我使用它们。

最佳答案

正如tomislav-maric在评论中指出的,原因恰恰是
您引用的页面上给出的内容:一些较旧的普遍编码
不包含被替换的字符。这是
可能今天不是很相关,因为这些编码具有
几乎消失了,取而代之的是一些ISO 8859
编码或UTF-8。我认为您不能将其用作
为您的经理辩护。

另一方面,至少一些C++专家更喜欢andornot&&||!。我不是其中之一,但在那里
无论哪种方式都是论据。我的感觉仅仅是它是C/C++,
还有很多奇怪的字符序列规则。 (如果我
从头开始设计一种语言,但是...)

关于页面下方的三部曲:
被认为是没有真正效果的实验。据,直到...为止
我知道,没有人真正使用过它们。结果代码将
就像替换字符一样不可读
用过的。如果您使用的是德语,请考虑其他选择
ISO 646:

int arrayÄ 10 Ü;      //  native
int array??( 10 ??);  //  tri-graphs
int array<: 10 :>;    //  digraph

只有最后一个甚至有点可读性,但是到那时
指定了最后一个,问题几乎消失了。

编辑:

还有一点。无论个人喜好,您
应该在以下位置做出and/or/not&&/||/!的决策
团队级别,团队中的每个人都应该使用相同的
约定。

编辑:

FWIW:三字母组合最初是在C90中引入的(K&R C没有
他们); C++ 98和C99中的有向图和备用标记。 (我不是
立即确定是否支持较早版本的CFront
还是不行。)

关于c++ - 为什么存在这些替代运算符表示形式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21778523/

10-16 04:33