2011-08-31 9 views
0

Im essayant d'envelopper la bibliothèque gloox dans l'objectif-c. J'ai lu cet article Making a Objective-C Wrapper for a C++ Library et il est assez simple mais il ne couvre pas les classes qui sont à l'intérieur d'un espace de noms. Des réflexions sur la façon d'utiliser la technique dans l'article ci-dessus seulement avec un espace de noms? Merci pour l'aide!wrapper objectif-c pour la bibliothèque C++ namespaced (gloox)

[modifier] Pensez I figured it out ajouter

#ifdef __cplusplus 
namespace gloox { 
class Client; 
} 
#endif 

Répondre

1

Je pense que l'évidence devrait fonctionner lorsqu'il est compilé comme objectif C++:

#if defined __cplusplus 
namespace Foo { class MyCPPClass; } // forward class declaration 
#else 
/*not sure here*/ /*namespace Foo { typedef struct MyCPPClass MyCPPClass; }*/ // forward struct declaration 
#endif 

@interface MyOCClass : NSObject 
{ 
@private 
    Foo::MyCPPClass* cppObject; 
} 

// methods and properties 

@end 

Le projet Qt a beaucoup de examples pour mélanger C++ et Objective-C.

+0

Il y a aussi une autre méthode que j'ai trouvé où vous enveloppez également la déclaration d'instance dans #ifdef. –

+0

Cool, pouvez-vous accepter la réponse si cela fonctionne? – silverjam

Questions connexes