标题中暗示的休闲/好奇心问题。
在我看来,我个人更喜欢新的运算符,以使代码更具可读性。
哪些自己用?您选择其中一个而不是另一个的原因是什么?
Emacs 也以不同的方式突出显示这些运算符,因此我在查看屏幕时可以获得更多视觉反馈。我知道旧的运算符也可以突出显示,但默认情况下突出显示 ISO646
我认为我什至从未见过实际使用字母运算符的 C/C++ 源代码。对我来说,这看起来很奇怪;非常非C-ish。
我更喜欢使用not
而不是!
因为它更具可读性:
if (not condition()) {
}
相对
if (!condition()) {
}
!
那种迷失在那里。当然,#define
在编写可移植的代码时必须避免(或 d)这种情况。
但是,and
并or
没有为我做太多,所以我不使用它们。
我不会使用替代运算符,因为在我看来,它们会导致更多的混乱而不是清晰。
如果我看到一个按字母顺序排列的名称,我希望有一个命名空间、类、变量、函数或函数样式的运算符——常见的运算符对我来说直观地将其划分为序列。对我来说,替代风格不适合 C/C++ 世界。
此外,虽然 Greg 对 C 或 C++ 的新手有意见,但您很快就会习惯它——我在任何地方都没有发现!
任何问题。
您指的是源自 的替代令牌iso646.h
吗?
它们来自 C 语言,很少见,因此大多数人可能不太容易阅读。我敢肯定,如果我们被这些关键词“抚养”起来,它们会更常见,因为它们读起来更像英语。
再说一次,&&
让非英语使用者用他们的母语说“和”。(并不是说这首先是关键字中的一个问题。)
我用旧的。
原因:我在 Perl 中编码了一段时间,运算符具有不同的优先级,具体取决于它们是否是拼写变体。由于这个原因,我遇到了几个错误,从那时起,我总是使用&&
,||
以及!
任何具有它们的语言的拼写变体。
逻辑(不仅是逻辑)运算符的替代标记,如and
,等or
,not
与 C++ 无关。它们几乎从一开始就出现在 C 中。如果你喜欢在你的代码中使用它们,你可以自由地这样做,但是如果人们认为这种做法相当不正统,请不要感到惊讶。通常人们在 C 和 C++ 代码中对这些运算符(例如&&
,||
等等)使用传统的指示符。