浅析object-c,swift "传值" 原理

原创 2017年01月02日 23:13:31

1.object-c 的 代理protocol,以及block能传值的深层次的原因是:它们的申明和实现可以在两个不同的类进行,所以这就符合在不同的类中传值的要求。

(1)协议的拥有者,可以创建协议实例,也就是协议执行者比如tabeview.delegate = self; self为协议的执行者 ,tableview为协议的拥有者。协议方法在协议中申明而在协议拥有者中被协议执行者调用,协议方法在协议执行者众实现.

(2)block是同样的道理

2.那么swift中的代理和闭包能传值的深层次原因也是:它们的申明和实现可以在两个不同的类进行,所以这就符合在不同的类中传值的要求。


其实闭包以及block是函数的变体一样。


那么可以推断不管任何语言,在2个代码文件(class)中的传值,其实都是函数(闭包--swift?block--oc?钩子--c++?)的申明和实现可以放在不同class中。


Object-C/Swift官网文档

  • 2017年08月22日 14:17
  • 4.93MB
  • 下载

object-c之NSdate浅析

object-c基础语法NSDate, 主要学习NSDate的设置、获取当前时间、当前时间加减秒后的时间、日期比较、日期转换成NSString等 XCode4.6.3,OS X SDK ...

从Object-C -> Swift3.0

当我们开始接触一门新语言时,我们难免避免不了类型和基本语法规则。我们会急切的想知道如何用新的语法规则写我们原先所熟知的语句。本文旨在对于Object-C和Swift做一些基本的对比。通过阅读本文,您能...

Swift Object-c 相互调用

我们先看一下Swift调用Object-c 首先我们创建一个OC类 到最后一步的时候发现多了一个确认框,点击Yes 系统会生成一个Swift和OC的转换桥梁。 他的命名规则是 项目...

Object-C--->Swift之(十一)属性观察者

属性观察者机制能让程序在属性被赋值时获得执行代码的机会,用来监视属性的除初始化之外的属性值变化,当属性值发生改变时可以对此作出响应 具体包括两个特殊的回调方法:willSet(newValue):被观...
  • IT_DS
  • IT_DS
  • 2016年02月05日 21:58
  • 1655

Object-C--->Swift之(六)函数类型

认识函数类型每个函数都有特定的函数类型函数类型是由函数的形参类型、->和返回值类型组成。例如: func Add(a:Int,b:Int){ ... } 该函数的函数类型为(Int,Int)->Voi...
  • IT_DS
  • IT_DS
  • 2016年01月22日 20:05
  • 536

黑马程序员---Object-C和Swift对象初始化

分配对象

在xcode 6.4 中使用swift和object-c混合编程,同时通过cocoapods进行管理的一些问题和解决办法

使用cocoapods 中的use_frameworks! 产生.h文件无法发现的问题 因为使用到SwiftyJSON这个第三方库来进行json的解析,并且版本是2.2.1。需要在PodFile里...

swift和object-c的相互调用

1.从Swift中调用已有的Objective-C代码 在写了一些独立的Swift组件并对它们进行单元测试后,我们开始用Swift调用已有的Objective-C的类。一切都开始变得实际起来。 ...

Swift闭包和Object-C block的比较

闭包 闭包的介绍 闭包和OC中的block非常相似OC中的block是匿名的函数Swift中的闭包是一个特殊的函数block和闭包都经常用于回调注意:闭包和block一样,第一次使用时可能...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:浅析object-c,swift "传值" 原理
举报原因:
原因补充:

(最多只允许输入30个字)