iphone - 单引号内的字符串文字形式的 Objective c 枚举值

标签 iphone objective-c enums

AudioToolbox/AudioServices.h 中找到枚举声明

enum
{
    kAudioSessionNoError                                =  0,
    kAudioSessionNotInitialized                         = '!ini',
    kAudioSessionAlreadyInitialized                     = 'init',
    kAudioSessionInitializationError                    = 'ini?',
    kAudioSessionUnsupportedPropertyError               = 'pty?',
    kAudioSessionBadPropertySizeError                   = '!siz',
    kAudioSessionNotActiveError                         = '!act',
    kAudioServicesNoHardwareError                       = 'nohw',
    kAudioSessionNoCategorySet                          = '?cat',
    kAudioSessionIncompatibleCategory                   = '!cat',
    kAudioSessionUnspecifiedError                       = 'what'
};

我真的不明白这个声明到底是什么。谷歌不提供任何信息。有什么帮助吗?

最佳答案

这些被称为“四个字符代码”:

http://en.wikipedia.org/wiki/FourCC

它们被转换为整数(32 位,因为它们是 4 个字符),但提高了与数值相对应的可读性。 Apple 长期以来一直使用它,主要用于 OSStatus 代码。

关于iphone - 单引号内的字符串文字形式的 Objective c 枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5514352/

相关文章:

ios - 向上滚动时 UITableView 有延迟

objective-c - NSDictionary - 打印数组

c++ - 无法为命名空间中的私有(private)枚举重载 i/o 运算符

swift - 使用枚举键向 Swift 字典添加值

iphone - 使用 NSDictionary 对象写入 plist 文件

iphone - 为什么 UIScrollView 在 ios 6 和 ios 7 中从顶部留出空间

iphone - NSMutableArray 崩溃应用程序

ios - 如何从外部文件夹添加 xcode 框架?

Java - 私有(private)和包私有(private)枚举构造函数之间的区别

iphone - 为什么发推文时没有显示文字?