欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

浅谈swift中类似于C++句柄的语法

程序员文章站 2024-03-17 22:08:46
...

前情提要

之前在做获取图书数据时,碰到了这样一个问题,解决方案类似于C++的句柄,但是iOS我不知道专业术语是什么,书架类想要获取数据类的数据,需要在数据类中new一个书架类的对象,并且需要初始化,问题就出现在这里了,书架类本身存在一定的缓存,如果进行初始化,会造成数据的丢失,这块就采用了这种方法,接下来就直接看代码吧!
首先在数据类中定义一个全局变量,类型为BookRackViewController

var bookRackViewController: BookRackViewController? = nil

然后再初始化

init(handleBookRackViewController: BookRackViewController) {
        bookRackViewController = handleBookRackViewController
    }

此时在书架类中的viewDidLoad()方法中定义数据类,并且将self传过去,这里的self就是书架类

 let gcdWebDataSource = GCDWebDataSource(handleBookRackViewController: self )

而此时就可以在数据类中直接将参数传递给书架类了

//将数据传到书架页面
        bookRackViewController?.setGCDWebDataSourceToBookRack(getname: name)

其中setGCDWebDataSourceToBookRack为书架类中接收参数的方法.

相关标签: iOS Swift