Ich dachte nur, wie Sie Blocks wie Objekte behandeln können, wenn ich zwei von ihnen erstellen und sie dann zu einem NSArray hinzufügen gibt es eine Möglichkeit, sie aus dem Array auszuführen?Ausführen von Blöcken von NSArray?
int (^Block_001)(void) = ^{ return 101; };
int (^Block_002)(void) = ^{ return 202; };
NSArray *array = [NSArray arrayWithObjects:Block_001, Block_002, nil];
EDIT: Update für Klarheit Pro @ davedelong die ausgezeichnete Antwort
int (^Block_001)(void) = [^{ return 101; } copy];
int (^Block_002)(void) = [^{ return 202; } copy];
NSArray *array = [NSArray arrayWithObjects:Block_001, Block_002, nil];
[Block_001 release];
[Block_002 release];
Schöne Reihe von Antworten .... Ich sah den Titel und hoffte auf einige einfache Rep-Punkte. Leute haben es ziemlich gründlich abgedeckt. :) – bbum
Nur ein kurzer Punkt, wenn du den Block nicht kopierst/frei gibst, wird er im Stack sein ... Wenn also der Stack zerstört wird, stürzt die App richtig ab? – fzaziz