我可以用!财产上的运营商?

时间:2015-10-21 15:42:13

标签: ios objective-c properties operators not-operator

是否可以在属性上使用!(not or or bang)运算符?我想要这样做的原因是因为我可能会找到一个与我想要的完全相反的属性。这是我想到的一个例子。

GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = 2;
request.maxPlayers = 2;
request.!playerGroup = MyMap_Forest | MyRulesCaptureTheFlag;

我从Apple Docs得到了这个例子并对其进行了修改。

以下是文档的说法:

  

如果您的游戏设置了playerGroup属性,则只有其请求具有相同playerGroup值的玩家才会被Game Center自动匹配。将playerGroup属性设置为0允许玩家匹配任何等待匹配。将playerGroup属性设置为非零数字,以便仅与匹配请求共享相同玩家组号的玩家匹配。

1 个答案:

答案 0 :(得分:2)

你似乎不想做什么。 playerGroup属性只有两种可能的语义:如果它是0,那么它匹配任何东西;如果它是任何非零值,那么它只匹配具有相同值的请求。

没有办法实现"匹配任何除了这个值"。这与语言或语法无关。它完全取决于Apple如何定义playerGroup属性。这种语义在框架和服务器端的实现中都有。希望某些假设的语言特征能够在这些代码片段中引发不同的行为是不明智的。