苹果系统开发中的混合编程(1):Objective-C和C++的相互调用

首先是OC调用C++的代码。
 
创建一个Objective-C的项目,并创建c++文件MyCppFile.hpp和MyCppFile.cpp。
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用

苹果系统开发中的混合编程(1):Objective-C和C++的相互调用

苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
把要调用Cpp代码的文件名改成mm后缀名,项目代码的结构如下:
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
实现C++部分的代码:
 
MyCppFile.hpp
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
MyCppFile.cpp
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
在main.mm里引入C++的头文件就可以调用了:
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
然后是C++调用OC
 
先创建OC相关的文件,然后把*.m修改为*.mm。
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
头文件用C的格式来进行编写
MyOCFile.h
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用

用OC编写具体的实现。

苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
同样,在C++里引入头文件即可调用。
苹果系统开发中的混合编程(1):Objective-C和C++的相互调用
 苹果系统开发中的混合编程(1):Objective-C和C++的相互调用

OC和C++间的调用比想象中的要简单,这里的关键是要把OC的文件的扩展名修改为*.mm。

 

相关推荐