Frage

Ich habe eine Klasse, die einen Block als Objekteigenschaft enthält:

generasacodicetagpre.

wo sffailureblock:

generasacodicetagpre.

Ich habe auch eine Operation, die auch als Objekteigenschaft (AFHTTPREQUERRESTOperation) deklariert ist, und ich möchte, dass er den Fehlerblock anrufen soll, sobald er abgeschlossen ist.

generasacodicetagpre.

Ich bekomme eine Compiler-Warnung "Das Faszinieren von selbst" in diesem Block wird wahrscheinlich zu einem Haltezyklus führen ".Ich habe das Internet durchsucht, aber ich konnte keine anständige Lösung finden, warum dies zu einem Haltezyklus führt.Ich rufe nicht 'selbst' in den Block überall an.

Eine andere seltsame Sache ist, dass, wenn ich 'self.failureblock (Fehler)' schreibe, der Compiler mir keine Warnung gibt!

Kann mir jemand erklären, was los ist?Ich muss in ARC-Speichermanagement-Regeln ernsthaft fehlen, aber ich kann es nicht herausfinden.

War es hilfreich?

Lösung

Wenn Sie auf "Fehler" im Betrieb des Betriebs Bezug nehmen, tun Sie wirklich "Selbst-> Aussagekolben" - also behält es sich implizit selbst.Was Sie tun können, ist eine automatische Variable zu erstellen.Über dem SelfoPerieren, dann verwenden Sie es im Block.[Wieder möchten Sie selbst -> Referenzen in diesem Block entweder vermeiden.]

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top