Objective c 存储应用程序范围的实例

Objective c 存储应用程序范围的实例,objective-c,ios,Objective C,Ios,如果我需要在我的应用程序中的许多其他类中访问同一个类的实例,那么在我的应用程序委托中创建一个包含该实例的属性,然后使用[UIApplication sharedApplication].delegate.instance?从我的应用程序中需要的任何位置访问该属性,这是否是一种好的做法。最好的方法是使用单例类: 祝你好运 我不这么认为。最好的方法是使用单例类: 祝你好运 你可以这样做,也可以像Heliem说的那样使用单例 但是,您需要引用代理的类: ((MyAppDelegate *) [UIAp

如果我需要在我的应用程序中的许多其他类中访问同一个类的实例,那么在我的应用程序委托中创建一个包含该实例的属性,然后使用
[UIApplication sharedApplication].delegate.instance

从我的应用程序中需要的任何位置访问该属性,这是否是一种好的做法。最好的方法是使用单例类:


祝你好运

我不这么认为。最好的方法是使用单例类:


祝你好运

你可以这样做,也可以像Heliem说的那样使用单例

但是,您需要引用代理的类:

((MyAppDelegate *) [UIApplication sharedApplication].delegate).instance;

你可以这样做,也可以像Heliem说的那样使用单例

但是,您需要引用代理的类:

((MyAppDelegate *) [UIApplication sharedApplication].delegate).instance;

那么,为什么这是一个更好的选择呢?在我看来,appdelegate将贯穿于应用程序的整个生命周期,并且它已经有了一个可用的单例。使用appdelegate处理这类事情没有真正的问题,但这是不可取的。使用appdelegate只处理来自OSWell的请求是一种很好的做法,为什么这是一种更好的选择?在我看来,appdelegate将贯穿于应用程序的整个生命周期,并且它已经有了一个可用的单例。使用appdelegate处理这类事情没有真正的问题,但这是不可取的。使用appdelegate只处理来自操作系统的请求是一种很好的做法