swift 3 中的核心基础

Core Foundation in swift 3

我在swift3中使用CF类,想好好管理一下。例如我有这一行:

let phones = ABRecordCopyValue(person, kABPersonPhoneProperty).takeRetainedValue()

通常当我在 objc 中使用地址簿 类 时,每当我调用名称中有副本的方法时,我需要在使用完该对象后调用 CFRelease()

现在 swift 我有 4 个选项可以调用

takeRetainedValue()
takeUnretainedValue()
retain()
autorelease()

但是没有release()。所以如果我想在 swift 中使用 CF 对象然后释放它,我应该使用其中的哪一个?

takeRetainedValue() 的调用将所有权转移给 ARC,消耗一个保留。这会处理您调用 release.

的需要