《从零开始学Swift》学习笔记(Day 70)——Swift与Objective-C混合编程之Swift与Objective-CAPI映射...
原创文章,欢迎转载。转载请注明:关东升的博客
Swift与Objective-C API映射
在混合编程过程中Swift与Objective-C调用是双向的,由于不同语言对于相同API的表述是不同的,他们之间是有某种映射规律的,这种API映射规律主要体现在构造函数和方法两个方面。
1、构造函数映射
在Swift与Objective-C语言进行混合编程时,首先涉及到调用构造函数实例化对象问题,不同语言下构造函数表述形式不同,如图是苹果公司官方API文档,描述了NSString类的一个构造函数。
Swift构造函数除了第一个参数外,其它参数的外部名就是选择器对应部分名。规律的其它细节图中已经解释的很清楚了,这个规律反之亦然,这里不再赘述。
2、方法名映射
在Swift与Objective-C语言进行混合编程时,不同语言下方法名表述形式也是不同的,如图是苹果公司官方API文档,描述了NSString类的rangeOfString:options:range:方法。
比较两种不同语言,我们会发现error参数在Swift语言中不再使用,而是在方法后添加了throws关键字。
转载于:https://blog.51cto.com/tonyguan/1749107
《从零开始学Swift》学习笔记(Day 70)——Swift与Objective-C混合编程之Swift与Objective-CAPI映射...相关推荐
- 从零开始学STM32(学习笔记——第三天)
CSDN话题挑战赛第2期 参赛话题:学习笔记 参考文章: [教学文章]STM32内部重要功能全记录 [教学文章]STM32内部核心功能大揭秘 [教学文章]STM32内部重要功能全记录 框架:STM32 ...
- 【swift学习笔记】二.页面转跳数据回传
上一篇我们介绍了页面转跳:[swift学习笔记]一.页面转跳的条件判断和传值 这一篇说一下如何把数据回传回父页面,如下图所示,这个例子很简单,只是把传过去的数据加上了"回传"两个字 ...
- swift学习笔记《5》- 实用
title: swift学习笔记<5>- 实用 date: 2016-09-21 21:39:00 categories: 学习笔记 Swift学习 tags: Swift 1.setVa ...
- 【从零开始学深度学习编译器】十二,MLIR Toy Tutorials学习笔记一
本笔记由学习MLIR Tutorials总结而成,欢迎批评指正. Chapter1: Toy语言和AST MLIR提供了一种Toy语言来说明MLIR的定义和执行的流程.Toy语言是一种基于张量的语言, ...
- Swift学习笔记(4)使用UIImagePickerController实现从设备图片库和照相机获取图片
Swift学习笔记(4)使用UIImagePickerController实现从设备图片库和照相机获取图片 设备图片库和照相机是图像的两个重要来源,使用UIKit中提供的图像选择器UIImagePic ...
- 【从零开始学深度学习编译器】十三,如何在MLIR里面写Pass?
[GiantPandaCV导语]这篇文章是学习了比较久然后按照自己的理解步骤重新总结了下来,主要是MLIR Toy Tutorials第3,4篇文章的内容.这里主要讲解了如何在MLIR中自定义Pass ...
- 动手学深度学习笔记3.4+3.5+3.6+3.7
系列文章目录 动手学深度学习笔记系列: 动手学深度学习笔记3.1+3.2+3.3 文章目录 系列文章目录 前言 一.softmax回归 1.1 分类问题 1.2 网络架构 1.3 全连接层的参数开销 ...
- 影像组学视频学习笔记(43)-标准差、标准误及95%置信区间CI、Li‘s have a solution and plan.
作者:北欧森林 链接:https://www.jianshu.com/p/f09d0f97592f 来源:简书,已获授权转载 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(43)主要 ...
- 影像组学视频学习笔记(42)-影像组学特征提取问题解决过程复现、Li‘s have a solution and plan.
作者:北欧森林 链接:https://www.jianshu.com/p/c3e6de2f79b3 来源:简书,已获转载授权 本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(42)主要 ...
最新文章
- 11.JDK8内存模型、本地方法栈、虚拟机栈、栈帧结构(局部变量表、操作数栈、方法出口、虚拟机栈与本地方法栈的关系、寄存器、方法区、堆(Heap)、jvm中的常量池、Metaspace(元空间))
- SCN exercise navigation的实现原理
- 【数学题】男女的比例
- 蚂蚁上市员工人均一套大 House,阿里程序员身价和这匹配吗?
- oracle sql group_con,SQL:Group Functions,GROUP BY,HAVING
- ImageView之android:tint= 属性方法作用详解
- linux常用分区大小,Linux基本知识点总结——硬盘分区及LVM
- Java 就业培训教程 再读笔记
- 给互联网人的反侦查手册
- HTML 个人简历源码
- uniapp 微信小程序的弹框文字换行
- mysql 嵌套_MySQL的嵌套查询
- 分形之皇冠(Crown)
- JavaScript变量定义以及数据类型划分(笔记)
- 计算机组成.就是它在运算.处理器CPU
- 书到用时方恨少,一大波JS开发工具函数来了
- 安科瑞电瓶车智能充电桩ACX可10路充电 安科瑞 戈静怡
- 详解HTTPS通信流程,使用JDK,openssl,XCA进行证书认证详细操作,Spring Boot配置SSL证书实操
- 基于SSM的物流信息管理系统(附论文)
- springboot 东方通(tongweb)替换tomcat
热门文章
- Xianfeng轻量级Java中间件平台:用户管理
- Sealed,new,virtual,abstract与override的区别
- Loadrunner的Tuxedo脚本分析,基本流程和基本函数介绍
- mysql php 封装类_市面上几款常见的微信开发框架对比(PHP和JAVA)
- 橡皮筋进度条ElasticProgressBar
- Xamarin Android布局文件没有智能提示
- pmp matlab 代码,【welch功率谱估计】C语言实现的代码与matlab计算结果不同
- lisp直线连接圆象限电_用小学数学知识解释,为什么井盖是圆的?
- 简述ospf的工作原理_物联网水表工作原理简述
- 关于python那些事_Python 入门你必须知道的那些事