2010-10-17 14 views
5

¿Alguien sabe cómo puedo declarar un método estático para una clase xcode y luego usarlo en mi proyecto?xCode/declarar métodos estáticos en la clase

Quiero crear una clase COMMON.H y luego hacer algo como esto en una de archivo .m

Common.MyStaticMethod();

no quiero tener que crear una instancia y la instancia del Común

Respuesta

19

Va a declarar un método de nivel de clase en Objective-C mediante el uso de "+" antes de la declaración de método.

 
// in Common.h 
+ (void)myStaticMethod; 

// call is from anywhere 
[Common myStaticMethod] 

es decir, un "-" antes de declaración de método significa métodos de instancia y "+" significa método nivel de clase que no están relacionados con cualquier caso particular de la clase.

+1

Los métodos de clase no son estáticos en Objective-C; se resuelven dinámicamente al igual que los métodos de instancia. El equivalente de Objective-C de un método estático es una función C, en lugar de un método de clase. – jlehr

+1

Ya, la clase también es un objeto en obj-c. Es por eso que en mi respuesta los he especificado como método de clase, no como método estático. Supongo que esto es lo que Vilasack quiere. – taskinoor

Cuestiones relacionadas