Ваша основная проблема в том, что вы путаете две разные вещи, называемые «массивами».У вас есть массивы C - они не являются объектами, поэтому вы не можете отправлять им сообщения (например, arrayByAddingObjectsInArray:
).То, что вы хотите , является NSArray.
Объявите их все как NSArray *strings1, *strings2, *strings3
, а затем напишите какой-нибудь метод для их инициализации следующим образом:
+ (id)createArrays {
strings1 = [[NSArray alloc] initWithObjects:@"Something", @"Something else", nil];
strings2 = [[NSArray alloc] initWithObjects:@"Yet another thing", nil];
strings3 = [[strings1 arrayByAddingObjectsFromArray:strings2] retain];
}
Вы хотите убедиться, что вы правильно управляете своей памятью здесь илипротечет как сумасшедший.Обычно лучше, чтобы объекты принадлежали к какому-либо классу, поэтому вы можете использовать сеттеры, а не управлять памятью вместо того, чтобы хранить их в глобальных или статических переменных.