5

以下关键字的目的是什么?

and      bitand   compl   not_eq   or_eq   xor_eq
and_eq   bitor    not     or       xor

如果它们都是直接等价于:

&&       &        ~       !=       |=      ^=
&=       |        !       ||       ^
4

2 回答 2

13

http://en.wikipedia.org/wiki/Iso646.h

iso646.h "...定义了许多宏,允许程序员使用 C 语言按位和逻辑运算符,如果没有头文件,这些宏在某些国际和非 QWERTY 键盘上无法快速或轻松地键入。

文件名指的是 ISO646 标准,这是一个 7 位字符集,具有许多区域变体,其中一些使用重音字符代替 C 运算符使用的标点符号。”

于 2012-06-28T18:15:30.270 回答
7

这样您就可以编写疯狂的代码诗,例如:

class jack
{
   jack();
   jack( jack & jill );
   jack& came_tumbling( int after );
   jack& fell( jack & jill ); 
   jack& operator &= ( jack & jill );
   jack& operator & ( jack & jill );
}

void to_fetch( int pail );

int a_pail;
int after;
jack broke_his_crown;
jack went_up_the_hill;
jack down;

jack and jill = went_up_the_hill;
to_fetch( a_pail ); // of water
jack fell( down and broke_his_crown 
and jill.came_tumbling( after ));
于 2012-06-28T18:49:08.160 回答