最近在做一个项目需要把OpenCV 的代码移植到iOS中,在移植过程中遇到了很多问题,其中最关键的就是OC与C++混编的问题,找了很多资料和弯路终于走通了,现在把思路整理好做个笔记.希望能给有需要的朋友一点帮助.
注意:
1.有C++代码的文件必须改成.mm Xcode才可以识别
2.确保编译器是Build Settings->Apple LLVM6.1 - Language->Compile Sources As->已经选择 According to File Type,如果选择了Objective-C++会有很多诡异的编译错误,原因未知,也许和我工程里包含了OpenCV的库有关.
混编原理:
需要一个NSObject类来封装C++类
CellCountObj //NSObject 类
HDCCountObj // C++类
实现原理:
CellCountObj 封装HDCCountObj 的C++类,
调用实现:
在ViewController中调用 CellCountObj类的外部接口,来实现调用 C++类
文件类型列表