Objective-C与Objective-C++的混用代码示例

简介: <p>很多已经熟悉C/C++的朋友在初次使用Objective-C作为开发语言时不是很习惯,不过objective-C/C++本身又是几乎完全兼容GNU C/C++的。<br> 这里作为一个代码实例来描述Objective-C与objective-C++如何混合使用。其实这就同C与C++如何混用一样,还是非常容易上手的。<br> 不 过,为了能够更好地看清这一混合优势。项目中使用了ob

很多已经熟悉C/C++的朋友在初次使用Objective-C作为开发语言时不是很习惯,不过objective-C/C++本身又是几乎完全兼容GNU C/C++的。
这里作为一个代码实例来描述Objective-C与objective-C++如何混合使用。其实这就同C与C++如何混用一样,还是非常容易上手的。
不 过,为了能够更好地看清这一混合优势。项目中使用了objective-C/C++一个非常强大的语法——Category(类别,或范畴)对原有的类 Sample进行扩展,衍生出一个accumulateValue这个成员方法。这个方法的实现放在一个.mm文件中(.m文件表示objective- C源文件,.mm表示objective-C++源文件),并且通过一个模板函数来实现。
这段代码看上去比较复杂,不过这仅仅作为一个样例而已。模板函数的功能是将Sample类的一个对象的value值不断累加。
比如:初始值为1,那么迭代一次就是2;再迭代一次就是4。每次迭代都是自己与自己相加。
在accumulateValue方法的实现中,使用AccumulateValue<sizeof(self.value)>(self);表示在32位系统下迭代4次;在64位系统下迭代8次。

代码下载地址:http://dl.dbank.com/c0pzbnnx7a

转自iOS分享网http://iosshare.cn


目录
相关文章
|
存储 Java 程序员
C++ 开发者快速学习 Objective-C 语言核心语法
本文将讨论 Objective-C 语言的核心语法。这部分开始详述一些具体的语法。正如你期待的一样,涉及到了定义和类。
223 0
|
C++ iOS开发 开发者
C++开发者快速学习Objective-C语言核心语法
  本文将Objective-C讨论了语言的核心语法。这部分开始详述一些具体的语法。正如你期待的一样,涉及到了定义和类。   类并不是特殊的   在Smalltalk中,类是具有一些特性的对象。在Objective-C中也一样。
944 0
|
C++ iOS开发 开发者
C++开发者快速学习Objective-C语言核“.NET研究”心语法
  本文将Objective-C讨论了语言的核心语法。这部分开始详述一些具体的语法。正如你期待的一样,涉及到了定义和类。   类并不是特殊的   在Smalltalk中,类是具有一些特性的对象。在Objective-C中也一样。
943 0
|
Web App开发 Java 测试技术
C++、Java、Objective-C、Swift 二进制兼容测试
> 鉴于目前动态库在iOS App中使用越来越广泛,二进制的兼容问题可能会成为一个令人头疼的问题。本文主要对比一下C++、Java、Objecive-C和Swift的二进制兼容问题。 ### iOS端动态库使用情况 0. iOS 8开始支持App使用动态库。 0. 苹果对提交的App的`__TEXT__`段大小是有限制的,很多巨无霸App容易超出这个限制。iOS9之前每个架构的`__
4391 0

热门文章

最新文章