Eine Liste der Klassenmethoden erhalten

8

Ich suche nach einer Möglichkeit, eine statische Methodenliste für eine bestimmte Klasse zu erhalten. Ich bekomme nur eine Liste von Instanzmethoden mit der Laufzeitfunktion class_copyMethodList() .

Gibt es eine Möglichkeit, statische Methoden aufzulisten?

    
Laurynas 08.09.2011, 07:36
quelle

1 Antwort

17

Jedes Class ist selbst ein Objective-C-Objekt und hat wiederum ein Objekt, das (eine Art) seine Klasse ist. Sie müssen dieses Metaklassenobjekt (siehe auch: < a href="http://www.sealiesoftware.com/blog/archive/2009/04/14/objc_explain_Classes_and_metaclasses.html"> "[objc explain]: Klassen und Metaklassen" ) und danach fragen seine Methoden (welche die Klassenmethoden sind, nach denen Sie suchen).

Aus der class_copyMethodList Dokumentation:

  

Diskussion

     

Um die Klassenmethoden einer Klasse zu erhalten, verwenden Sie class_copyMethodList(object_getClass(cls), &count)

* Es gibt keine statischen Elemente Methoden in Obj-C .

    
Josh Caswell 08.09.2011, 08:01
quelle