“常用符号”|&引用;在Objective-C中

“常用符号”|&引用;在Objective-C中,objective-c,Objective C,源代码如上图所示。 想知道符号“|”代表什么? 非常感谢您的回答,并感谢您的回复;) 简而言之:那是一个手术 它通常用于生成位掩码 通过此操作,您可以将标志组合为二进制数 例如:的可能标志为: 本质上与以下内容相同: self.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleWidth; (因为两个操作数相同) 如果你想问一下: self.autoresizingMask = UIView

源代码如上图所示。 想知道符号“|”代表什么? 非常感谢您的回答,并感谢您的回复;)

简而言之:那是一个手术

它通常用于生成位掩码

通过此操作,您可以将标志组合为二进制数

例如:的可能标志为:

本质上与以下内容相同:

self.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleWidth;
(因为两个操作数相同)

如果你想问一下:

self.autoresizingMask = UIViewAutoresizingFlexibleWidth;
这会将
self.autoresizingMask
设置为:

self.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;

(1字符表示包含或按位操作。该操作以匹配两个对象的位字符串为前提


如果您有一个位字符串1101和另一个位字符串1001,则这两个字符串中的inclusive or将产生1011。基本上,如果两个字符串中的当前位相同,则在其位置输出1,否则输出0。

|是C中的按位or运算符(因此在Objective-C中也是如此)


在您询问的上下文中,它用于组合两个标志值。

这是一个按位OR运算,也许这可以帮助您:

self.autoresizingMask = UIViewAutoresizingFlexibleWidth;
self.autoresizingMask = UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight;
(1<<1)|(1<<4)=(0b 0000 0010)|(0b 0001 0000)=0b 0001 0010 = 9