【发布时间】:2011-05-25 22:29:19
【问题描述】:
我在 Obj-C 代码中使用 C++ 对象。为此,我将 C++ 对象包装在 ObjC 对象中,这些对象又使用不透明指针来访问 C++ 类。那东西正在起作用。
问题: C++ 对象(例如 CPPObj.cc)使用来自其他 c++ 头文件(例如 ToolsCPP.h)的方法——当我尝试编译 ObjC 代码(例如 Obj.mm)时,它抱怨这些方法未定义。
即使我直接在 Obj.mm 文件中包含 ToolsCPP.h,它仍然会报错。
丑陋的解决方案: 在 CPPObj.cc 中包含来自 ToolsCPP.h 的所有必要方法,以便 C++ 对象完全自包含。这将是一个巨大的痛苦。
有没有更好/更容易/正确的方法来做到这一点?
谢谢!
【问题讨论】:
-
如果您输入编译器正在编写的确切错误消息会很有帮助。
标签: c++ objective-c wrapper linker-errors opaque-pointers