Быстрое перечисление для массива, содержащего различные типы объектов

Если у меня есть NSMutableArray, куда я добавил объекты разных классов (например, NSString, NSMutableString, NSProcessInfo, NSURL, NSMutableDictionary и т. Д.) Теперь я хочу быстро перечислить этот массив, поэтому я попытался:

for (id *element in mutableArray){
   NSLog (@"Class Name: %@", [element class]);
   //do something else
}

Я получаю предупреждение в Xcode, говорящее

warning: invalid receiver type "id*"

Как я могу избежать этого предупреждения?

1 ответ

Решение

Код почти правильный. Когда вы используете id, это уже подразумевается как указатель, поэтому вы должны написать его так:

for (id element in mutableArray){
   NSLog (@"Class Name: %@", [element class]);
   //do something else
}
Другие вопросы по тегам