Qual é o tipo de enum cujos valores parecem ser cadeias de caractere
Estou trabalhando com a AppleScriptingBridge
framework e geraram um arquivo de cabeçalho para o iTunes que contém váriosenum
s assim:
typedef enum {
iTunesESrcLibrary = 'kLib',
iTunesESrcIPod = 'kPod',
iTunesESrcAudioCD = 'kACD',
iTunesESrcMP3CD = 'kMCD',
iTunesESrcDevice = 'kDev',
iTunesESrcRadioTuner = 'kTun',
iTunesESrcSharedLibrary = 'kShd',
iTunesESrcUnknown = 'kUnk'
} iTunesESrc;
Meu entendimento era queenum
s valores @ tinham que ser parecidos com números inteiros, mas essa definição parece violar essa regra. Além disso, parece que tratar essesenum
valores como números inteiros (em umNSPredicate
, por exemplo) não faz a coisa cert
Adicionei oenum
declaração acima para um arquivo C com um @ vazmain
, e compilado usandoi686-apple-darwin9-gcc-4.0.1
. Então, enquanto esses tipos deenum
s podem não estar em conformidade com o padrão C (como Parappa aponta abaixo), pelo menos estão sendo compilados paraalgun digite por gcc.
ntão, qual é esse tipo e como posso usá-lo, por exemplo, em uma string de format