これは他の言語でも可能であることがわかりましたが、objective-c ではこのようなものが必要です
これに似た列挙型があります
typedef enum {
option1 = 1 << 0,
option2 = 1 << 1,
option3 = 1 << 2
...
...
} SomePossibleOptions;
その後、ユーザーは必要なオプションのマスクを作成できます
SomePossibleOptions myOptions = option1 | option2;
[self.someObject performOperationsForOptions:myOptions];
-(void)performOperationsForOptions:(SomePossibleOptions)theOptions
{
if (myOptions & option1)
{
// do something
}
if (myOptions & option2
{
// do something
}
//(could use a switch statement)
}
しかし、むしろある種の構文を使用したい
foreach (option in myoption)
{
//do something
}