Pregunta

Actualmente estoy usando xcode para algún desarrollo de c ++ & amp; Necesito generar getters & amp; setters.

La única forma en que lo sé es generando getters & amp; setters en estilo Objective C

algo como esto - (cadena) nombre; - (nulo) setName: valor (cadena);

No quiero esto; Quiero generación de estilo c ++ con implementación & amp; declaración para su uso en los archivos de encabezado.

¿Alguna idea ...?

¿Fue útil?

Solución

Parece que solo está buscando una manera de reducir la molestia de escribir getters / setters (es decir, declaraciones de propiedad / sintetizar) todo el tiempo, ¿verdad?

Hay una macro gratuita que puede usar en XCode para incluso generar automáticamente las declaraciones @property y @synthesize después de resaltar una variable miembro que me parece realmente útil :)

Si está buscando una herramienta más robusta, hay otra herramienta paga llamada Accesorizador que tal vez quieras consultar.

Otros consejos

Objetivo C! = C ++.

ObjectiveC le ofrece una implementación automática usando las palabras clave @property y @synthesize (actualmente me estoy inclinando por ObjectiveC, ¡acabo de comprar una Mac!). C ++ no tiene nada de eso, por lo que simplemente necesita escribir las funciones usted mismo.

Foo.h

inline int GetBar( ) { return b; }
inline void SetBar( int b ) { _b = b; }    

o

Foo.h

int GetBar( );
void SetBar( int b );

Foo.cpp

#include "Foo.h"

int Foo::GetBar( ) { return _b; }
void Foo::SetBar( int b ) { _b = b; }

algo.h:

@interface something : NSObject
{
   NSString *_sName;  //local
}

@property (nonatomic, retain) NSString *sName;

@end

algo.m:

#import "something.h"
@implementation something

@synthesize sName=_sName; //this does the set/get

-(id)init
{
...
self.sName = [[NSString alloc] init];
...
}

...


-(void)dealloc
{
   [self.sName release]; 
}
@end
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top