Mój problem polega na tym, że wyliczenie w celu-c jest zasadniczo wartością int, nie jestem w stanie zapisać go w postaci NSMutableArray
. Wygląda na to, że NSMutableArray
nie przyjmuje żadnych typów danych c, takich jak int.Jak przechowywać wartości wyliczeniowe w NSMutableArray
Czy jest jakiś popularny sposób, aby to osiągnąć?
typedef enum
{
green,
blue,
red
} MyColors;
NSMutableArray *list = [[NSMutableArray alloc] initWithObjects:
green,
blue,
red,
nil];
//Get enum value back out
MyColors greenColor = [list objectAtIndex:0];
Generalnie powinno być bezpieczne, ale są przypadki, gdy tak nie jest, ponieważ teksty stałe mogą być reprezentowane wewnętrznie jako różnorodność różnych typów. Zobacz tę odpowiedź, aby uzyskać alternatywny http://stackoverflow.com/questions/1187112/cocoa-dictionary-with-enum-keys/1187901#1187901 – DougW
Dobre rozwiązanie, dzięki –