Цель C - Вызов статического метода для объекта типа Class? - PullRequest
1 голос
/ 02 февраля 2011

Я получаю следующую ошибку: Класс не является объективным именем класса c

- (void)CallStaticMethodForClass :(Class *)myClass
{
     [myClass doSomething];
}

+ (void)doSomething
{
     //
}

1 Ответ

7 голосов
/ 02 февраля 2011

Должен быть объявлен как:

- (void)callMethodOnClass:(Class)myClass { ...

Пара вещей:

  1. Указатель (*) не нужен при обращении к Class. Дважды нажмите на команду «Class», чтобы понять почему (это часть typedef)
  2. Мы не начинаем наши методы с заглавной буквы
  3. В Objective-C не существует такого понятия, как "статический" метод. У нас есть «методы класса».
...