Objective c 不丢失视图之间的实例引用?

Objective c 不丢失视图之间的实例引用?,objective-c,Objective C,在我的主视图类中,我有另一个类的实例,它是通过tcp套接字的连接 当我离开该视图,然后返回时,我不想释放/丢失此实例,因为我不想建立新连接,它必须保持不变(套接字就像聊天室一样始终连接) 这是在视图的init处完成的,仅在首次启动时完成。然后,当我离开视图回来时(如果我不再执行这行代码),他会为我保存socketInstance引用吗? 如果没有,我如何让他在程序生命周期的剩余时间里保存它? 我无法一次又一次地创建此实例。能否使用静态变量?否则,请使用一个可以保持全局的变量。您可以使用一个静态变

在我的主视图类中,我有另一个类的实例,它是通过tcp套接字的连接

当我离开该视图,然后返回时,我不想释放/丢失此实例,因为我不想建立新连接,它必须保持不变(套接字就像聊天室一样始终连接)

这是在视图的
init
处完成的,仅在首次启动时完成。然后,当我离开视图回来时(如果我不再执行这行代码),他会为我保存
socketInstance
引用吗? 如果没有,我如何让他在程序生命周期的剩余时间里保存它?
我无法一次又一次地创建此实例。

能否使用静态变量?否则,请使用一个可以保持全局的变量。您可以使用一个静态变量吗?否则,请使用您可以保持全局性的

谢谢。我该如何使用static进行此操作?关于singleton,别忘了我必须让代理进入主视图。
SocketConnector
的singleton仍然可以保留代理。。。我不确定你的意思,我个人会用它在你的projectname-Prefix.pch文件中包含头文件,然后你可以访问静态函数,该函数将返回你调用它的对象实例。谢谢,这似乎是正确的方式,但我有点害怕,因为我不确定如何确切地实现它-并插入scoket类和它的委托,没有错误。它基本上与任何其他类相同,只是没有转到
classname*instance=[[classname alloc]init]您只需执行
classname*instance=[classname sharedSingleton]。您只需将一个方法添加到类中,并全局包含标头,这是您需要做的唯一更改。如果套接字类不是您的,那么只需子类化/添加一个将实现该方法的类别。谢谢。我该如何使用static进行此操作?关于singleton,别忘了我必须让代理进入主视图。
SocketConnector
的singleton仍然可以保留代理。。。我不确定你的意思,我个人会用它在你的projectname-Prefix.pch文件中包含头文件,然后你可以访问静态函数,该函数将返回你调用它的对象实例。谢谢,这似乎是正确的方式,但我有点害怕,因为我不确定如何确切地实现它-并插入scoket类和它的委托,没有错误。它基本上与任何其他类相同,只是没有转到
classname*instance=[[classname alloc]init]您只需执行
classname*instance=[classname sharedSingleton]。您只需将一个方法添加到类中,并全局包含标头,这是您需要做的唯一更改。如果套接字类不是您的,那么只需子类化/添加一个将实现该方法的类别。
        socketInstance=[[SocketConnector alloc]init];
        socketInstance.delegate=self;