Для этого нет специального синтаксиса.Вы просто определяете метод класса для возврата статического массива.
Например:
@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]