как объявить NSArray с unichars? - PullRequest
0 голосов
/ 24 октября 2011

Я хочу создать NSArray, как показано ниже:

NSArray * alphabets = [NSArray arrayWithObjects:'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',nil];

, но я получу BAD_ACCESS_ERROR во время выполнения этого.

как я могу понять это и заставить эту строку кода работать?

привет

Ответы [ 2 ]

2 голосов
/ 24 октября 2011

'a' не является допустимым NSObject, это примитивный тип char

для использования [NSArray arrayWithObjects:...] вам необходимо передать ему объекты

, например:

NSArray * alphabets = [NSArray arrayWithObjects:@"a",@"b",@"c",@"d",@"e",nil];

или используйте C / C ++ обозначение массива

char[] alphabet ....
2 голосов
/ 24 октября 2011

Вы можете добавить к NSArray только объекты.Например,

NSArray * alphabets = [NSArray arrayWithObjects:@"a",@"b",@"c",@"d",@"e",nil];

Но 'a' не является объектом.Когда вы пишете @"a", compile создает объект типа NSString и добавляет его к вашему array.

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...