我使用以下代码在C#中创建一个公共静态数组
- public class A{
- public static array[] obj;
- }
我有另一个班B.
从B班我打电话
A.ArrayName和我得到我在类A中使用的数组.
我想知道,在目标C中相当于什么
解决方法
没有特殊的语法.您只需定义一个类方法来返回静态数组.
例如:
- @implementation A // note this is in the implementation
- static NSArray *array;
- + (NSArray *)array
- {
- if (!array)
- array = [[NSArray alloc] init];
- return array;
- }
- @end
或者对于更好的代码,但稍微更好的性能(一个很好的想法在紧缩循环,但通常不值得):
- @implementation A
- static NSArray *array;
- + (void)initialize // this method is called *once* for every class,before it is used for the first time (not necessarily when the app is first launched)
- {
- [super initialize];
- array = [[NSArray alloc] init];
- }
- + (NSArray *)array
- {
- return array;
- }
- @end
要从B类访问它,你只需要:[A array]