Objective-C - 是属于 C 组语言的一种语言。
C++
在这种情况下,我可以在我的 iOS 项目中使用任何库,对吗?
我怎样才能做到这一点?有什么建议么?
如果您希望将库的源代码集成到您的应用程序中,那么您的问题确实是tilo提到的How can I use C++ with Objective-C in XCode
如果您希望使用已构建的库(例如.so
文件),您需要:
.
// 1. Load library
void *lib = dlopen("path/to/you/lib.so", RTLD_LAZY);
// 2. Handle errors (load failed)
if (!lib)
{
fprintf(stderr, "dlopen(): %s\n", dlerror());
exit(EXIT_FAILURE);
}
// 3. Get lib functions addresses
any_library_function = (void *)GetProcAddress(lib, "any_library_function");
// 4. Use the functions
any_library_function(…);
注意:您可能需要将使用该代码的源文件从 重命名.m
为.mm
. 最好是在创建文件后直接在 Xcode 中执行此操作。
是的你可以。您的 C++ 库通过 C 链接公开绑定,您可以直接在 Objective-C 中使用,或者您可以使用 Objective-C++ 访问 C++ 绑定。