我试图将gloox库包装在objective-c中。我已经阅读了这篇文章Making a Objective-C Wrapper for a C++ Library并且它非常简单,但它不包括命名空间内的类。关于如何在上面的文章中仅使用命名空间来使用该技术的任何想法? 谢谢你的帮助!
[编辑] 想想我明白了 添加
#ifdef __cplusplus
namespace gloox {
class Client;
}
#endif
答案 0 :(得分:1)
我认为当编译为客观的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
Qt项目有很多examples用于混合C ++和Objective-C。