was macht -arrayWithArray eigentlich?

8

Ich möchte genau sehen, wie es ein Array erstellt. Wie kann ich die .m-Dateien anzeigen, die zeigen, wie es gemacht wird?

    
RexOnRoids 08.09.2009, 04:06
quelle

4 Antworten

16

Wie bei @Ken erwähnt, können Sie die Quelle nicht sehen (obwohl Sie die Methode über gdb disassemblieren können).

Die Methode selbst erstellt eine unveränderliche (nicht änderbar), autoreleased Kopie des angegebenen Arrays. Folgendes ist im Verhalten identisch:

%Vor%

Wählen Sie je nach der Kürze, die Sie mögen, ich denke: -).

    
Nathan de Vries 08.09.2009, 04:57
quelle
2

Nein, Kakao ist keine Open Source.

Wenn Sie eine Frage haben, sollten Sie sie einfach fragen.

Dies wäre ein gültiger Weg, um es zu implementieren:

%Vor%

Sie können die GNUStep-Quelle für lesen NSArray , aber beachten Sie, dass dies eine alternative Implementierung der Cocoa APIs ist.

    
Ken 08.09.2009 04:32
quelle
2

Wenn Sie fragen, wozu +arrayWithArray dient (abgesehen davon, dass Sie ein Autorelease-Wrapper um -initWithArray sind), würde ich Folgendes sagen: Verwenden Sie es, wenn Sie eine automatisch freigegebene Kopie eines Arrays erstellen möchten. Mit anderen Worten, Sie könnten es so sehen:

%Vor%

Entspricht:

%Vor%

Ich würde sagen, dass es für die Bequemlichkeit da ist, wenn es zu Ihrem Stil passt.

    
Dave DeLong 08.09.2009 04:45
quelle
0

GNUstep, die GNU-Implementierung der OPENSTEP-Spezifikation, von der Cocoa und Cocoa Touch abstammen, implementiert +arrayWithArray: wie folgt:

%Vor%

Ссылка

    
user105039 08.09.2009 13:19
quelle