我已成功完成了在Objective-C项目中使用c ++的教程:http://www.sitepoint.com/using-c-and-c-in-an-ios-app-with-objective-c/
但是,我希望将hpp(和cpp)文件用作单独的子项目(创建为cocoa touch静态库项目)。
AllTestVC.m可以看到Objective-C文件(HelloCpp.h / m),但c ++文件不可见。我该如何解决?
奇怪的是,当我在AllTestVC中点击我的TestCPP对象时,xcode正确地在TestCpp.hpp中定义了它。
编辑:
使用的文件:
AllTestVC.mm - 位于主项目中,实际运行HelloCpp.h和TestCpp.hpp代码的那个
HelloCpp.h / m - 来自子项目的objC文件
TestCPP.hpp / cpp - 来自子项目的c ++文件
EDIT2:
在EDIT3之后,此错误现在没有出现:错误消息是:找不到HelloCpp / TestCpp.hpp文件。
EDIT3: 我已将文件夹$(PROJECT_DIR)/ HelloCpp添加到项目的HEADER SEARCH PATHS(现在看到所有文件),并且在构建过程中我收到来自链接器的错误:
Undefined symbols for architecture arm64:
"TestCPP::Greeting()", referenced from:
-[ALLTestVC button1Pressed:] in ALLTestVC.o
"TestCPP::greet()", referenced from:
-[ALLTestVC button1Pressed:] in ALLTestVC.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
arm64包含在Architectures和Valid arcitectures中(两者都在主项目和子项目helloCpp.xcodeProj中)。