2 Stimmen

Übergabe von BOOL * an ALAssetsLibrary

Hallo, ich muss ein BOOL an die

ALAssetsLibrary 
- (void)enumerateGroupsWithTypes:(ALAssetsGroupType)types usingBlock:(ALAssetsLibraryGroupsEnumerationResultsBlock)enumerationBlock failureBlock:(ALAssetsLibraryAccessFailureBlock)failureBlock

Aufzählungsblock hat die folgende Signatur.

^( ALAssetsGroup *group, BOOL *stop )

und in der Dokumentation steht:

Halt:: Ein Zeiger auf einen booleschen Wert; setzen Sie den Wert auf YES, um die Aufzählung zu beenden.

Wenn ich jedoch versuche, den Wert auf

stop = YES

Ich erhalte die folgende Warnung und die Aufzählung wird einfach fortgesetzt.

Initialization makes pointer from integer without cast

Also meine Frage ist, wie ich einen booleschen als Zeiger auf den Stop-Parameter übergeben?

Für jede Hilfe wären wir Ihnen sehr dankbar.

7voto

Ole Begemann Punkte 133946

Wie Sie sagten, stop ist ein Zeiger auf eine BOOL Wert. So weisen Sie dem Speicherplatz einen Wert zu stop verweist, müssen Sie den Zeiger mit der Option * Betreiber. Etwa so:

*stop = YES;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X