En general, desea evitar el uso de globales. Si necesita acceder a datos que deben compartirse, existen dos enfoques comunes.
Ponga los valores en su AppDelegate.
Si solo tiene uno o dos valores compartidos, AppDelegate es una manera fácil de colocar contenido compartido.
El AppDelegate se puede acceder desde los controladores como tal:
FooApp* appDelegate = (FooApp*)[[UIApplication sharedApplication] delegate];
Dónde FooApp
es el nombre de la clase de aplicación.
Cree una clase singleton.
que contamina su AppDelegate con una gran cantidad de valores compartidos no es lo ideal, y/o si desea que estos valores persistan de sesión a sesión, la creación de una clase Singleton que está respaldado por NSUserDefaults
es otra manera de compartir los valores a través de instancias.