Ios 将NSManagedObjectContext传递到函数时是否使用inout关键字?
我正在开发我的第一个真正的核心数据应用程序,并且能够使用segues在整个应用程序中成功地将指针传递到我的Ios 将NSManagedObjectContext传递到函数时是否使用inout关键字?,ios,swift,core-data,nsmanagedobjectcontext,inout,Ios,Swift,Core Data,Nsmanagedobjectcontext,Inout,我正在开发我的第一个真正的核心数据应用程序,并且能够使用segues在整个应用程序中成功地将指针传递到我的managedObjectContext实例。然而,我遇到了一个问题,因为我正处在一个十字路口,需要将我的managedObjectContext传递到一个函数中 问题: 由于函数是按值传递的,因此我假设我将创建managedObjectContext实例的副本,从而可能会破坏将原始指针传递到managedObjectContext实例的目的 我应该使用inout修饰符来避免创建manage
managedObjectContext
实例。然而,我遇到了一个问题,因为我正处在一个十字路口,需要将我的managedObjectContext
传递到一个函数中
问题:
由于函数是按值传递的,因此我假设我将创建managedObjectContext实例的副本,从而可能会破坏将原始指针传递到managedObjectContext实例的目的
我应该使用
inout
修饰符来避免创建managedObjectContext的副本吗?NSManagedObjectContext
是一个类,因此是一个引用类型。无需通过inout
传递引用类型即可共享实例。为引用类型传递的“值”是指向它们的指针
在从ObjC到Swift的转换过程中(IMO)丢失的一件事是引用类型不再有任何指示符。在ObjC中,您可以通过其类型中的
*
来识别它们。在Swift中,您只需知道哪个是哪个。NSManagedObjectContext是一个类,因此是一个引用类型。无需通过inout
传递引用类型即可共享实例。为引用类型传递的“值”是指向它们的指针
在从ObjC到Swift的转换过程中(IMO)丢失的一件事是引用类型不再有任何指示符。在ObjC中,您可以通过其类型中的*
来识别它们。在Swift中,您只需知道哪些是哪些