Objective-C - это просто C с некоторой дополнительной разметкой для объектов, новые типы не были добавлены.
Это значит, нет.
Для взаимоисключающих флагов Apple использует строки.
header.h
extern NSString * const kNSSomeFlag;
extern NSString * const kNSOtherFlag;
extern NSString * const kNSThirdFlag ;
code.m
NSString * const kNSSomeFlag = @"kNSSomeFlag";
NSString * const kNSOtherFlag = @"kNSOtherFlag";
NSString * const kNSThirdFlag = @"kNSThirdFlag";
…
void myFunction(NSString *flag)
{
if (flag == kNSSomeFlag) {
// the code
}
}
Пример этого можно найти в NSDistributedNotificationCenter
.