Day33:Swift 和 Object - C
- 注意点 Subclass
- 对于自定义类而言,OC的类,不能继承自swift的类,即要混编的OC类不能是swift的子类。反过来,需要混编的swift类可以继承自OC的类。
- 注意点 宏
- OC:定义一个常量值,后面可以方便使用;例如:#define TOOLBAR_HEIGHT 44;
- Swift:可以直接使用 let TOOLBAR_HEIGHT:CGFloat = 44;
- OC:定义一个不变化的常用值,或者一个较长的对象属性;如#define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width);
- Swift:可以直接使用 let SCREEN_WIDTH = UIScreen.mainScreen().bounds.size.width
- OC:定义一个会变化的常量值,或者一个较长的对象属性;如#define STATUS_BAR_HEIGHT [UIApplication sharedApplication].statusBarFrame.size.height;
- Swift:可以用函数:func STATUS_BAR_HEIGHT() -> CGFloat { return UIApplication.sharedApplication().statusBarFrame.size.height; }
- OC:定义一个带参数的宏,类似一个函数;如#define RGB_COLOR(r,g,b) [UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:1.0];
- Swift:可以用函数:func RGB_COLOR(r:CGFloat,g:CGFloat,b:CGFloat) -> UIColor{return UIColor(red:r,green:g,blue:b,alpha:1.0)}
- 注意点 swift独有特性
- swift 中有许多OC没有的特性,比如:swift有元组、为一等公民的函数,还有特有的枚举类型。所以要使用的混编文件要注意swift独有特性问题。
Day33:Swift 和 Object - C相关推荐
- 理解 OpenStack Swift (2):架构、原理及功能 [Architecture, Implementation and Features]...
本系列文章着重学习和研究OpenStack Swift,包括环境搭建.原理.架构.监控和性能等. (1)OpenStack + 三节点Swift 集群+ HAProxy + UCARP 安装和配置 ( ...
- Swift云存储特性研究
0.What is swift? OpenStack Object Storage (Swift) 是用来创建冗余的.可扩展的对象存储(引擎)的开源软件. swift使用标准化的服务器存储 PB 级的 ...
- Realm Swift
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- 使用Swauth认证多节点安装Swift
转载请写明出处:http://blog.csdn.net/cywosp/article/details/7428769 1. 摘要说明 本文所涉及到的所有操作都是在Ubuntu Se ...
- OpenStack潜力巨大:红帽打造生态系统
本文讲的是<strong>OpenStack潜力巨大:红帽打造生态系统,</strong>云计算.大数据.移动互联网是目前炙手可热的三个IT话题.而开源社区在其中扮演的是重要的 ...
- 深入了解什么是Docker
基于高度虚拟化所诞生的容器技术,如今已经走向大规模应用.那么容器.虚拟机.Docker.Openstack.Kubernetes 之间又有什么关系,对现在的选择有什么影响呢? 上世纪 60 年代,计算 ...
- Go语言(golang)开源项目大全
http://www.open-open.com/lib/view/open1396063913278.html#Compression 内容目录 Astronomy 构建工具 缓存 云计算 命令行选 ...
- iOS 项目源码大全 github 国内外大神
github排名https://github.com/trending,github搜索:https://github.com/search 主要工作说明: 重新整理了Xcode好用的插件,信息更详细 ...
- golang 开源项目全集
一直更新中,地址:https://github.com/golang/go/wiki/Projects#zeromq Indexes and search engines These sites pr ...
- Flutter学习之入门和体验
作者:真丶深红骑士 链接: https://juejin.im/user/597247ad5188255aed1fbba6 本文由作者授权发布. 01前言 1.什么是Flutter 上周我的一位微信好 ...
最新文章
- SP348 EXPEDI - Expedition(有趣的贪心,优先队列)
- python 如何自学-如何系统地自学 Python?
- 零基础学python爬虫-零基础学习python_爬虫(53课)
- 转 在b/s开发中经常用到的javaScript技术
- CentOS 7 巨大变动之 firewalld 取代 iptables
- cocos ScrollView(滚动容器)加载大量item导致的卡顿问题解决方案
- c ++明明的随机数_从列表C ++程序中随机建议电影
- MACIOS Socket编程
- huffman算法c语言实验报告,huffman二叉树实验报告--数据结构(c语言).doc
- 微信小程序自带地图_微信小程序之map地图
- 【LeetCode】剑指 Offer 54. 二叉搜索树的第k大节点
- 【整理】牛客网编程题-前端篇(简单难度)
- c/c++的预处理定义 Stringizing Operator (#) Charizing Operator (#@) Token-Pasting Operator (##)
- .net WPF是什么
- Windows 10 自带那么多图标,去哪里找呢?
- 嵌入式接口之GPIO驱动LED的实验(附完整代码和工程以及详细的调试过程)
- Windows Office 2019 很抱歉,此功能看似已中断,并需要修复
- fiddle 下载及配置
- 线性模型(二)-- 线性回归公式推导
- 利用pearcmd.php本地文件包含(LFI)
热门文章
- 3款堪称神器的电脑软件,简单又实用
- android 息屏锁频录音、录视频、电话自动录音
- 使用openlayers投影阿伯斯(Albers)
- ug计算机环境变量,ug80添加中文环境变量的具体方法
- 什么是UDS诊断协议?
- sha256算法_以太坊2.0将弃用Keccak256,而启用SHA256哈希算法?
- 国二考试c语言考场能炒么,国2考试题_计算机国二office高级应用考试的题目是从题库20套里抽其中一套还是别的题目_淘题吧...
- charset参数 sqluldr2_大数据导出工具sqluldr2
- charset参数 sqluldr2_SQL*Loader 的使用sqlldr和sqluldr2方法详解
- IntelliJ IDEA上svn分支管理和使用