我想在所有视图控制器中访问相同的变量....
答案 0 :(得分:2)
extern是一个C关键字,在Objective-C中与在C中一样。在头文件中,声明你的变量:
extern NSString *myGlobal;
然后将其设置在.m文件中。
然而,这通常是一种糟糕的编码习惯;通常最好将视图控制器显式地设置为某种状态对象或数据源。
答案 1 :(得分:1)
不是将变量放在extern中,而是将数据存储在AppDelegate实例中 - 或者存储在其他一些单例中。然后你可以从任何地方进入并修改它。
答案 2 :(得分:0)
虽然我承认我仍然经常使用AppDelegate解决方案,但我相信单例设计模式是更好的解决方案。 Here's a link to a solution and the reasoning.