Правильный корневой класс для Objective C? - PullRequest
2 голосов
/ 18 июня 2009

В Интернете я нашел ссылки, в которых говорится о двух разных корневых классах для ObjC: objc/Object.h или Foundation/NSObject.h. Они требуют разных флагов компилятора (-lobj против -lobjc -framework Foundation, и имеют разные селекторы для инициализации и освобождения объектов. Является ли NSObject заменой или у них разные приложения? Очевидно, NSObject.h будет лучше для вещей типа NextStep, но имеет ли Object.h преимущества, которые могли бы улучшить его в определенных ситуациях?

FWIW, обновленный FAQ из comp.lang.objective-c, кажется, указывает, что NSObject.h является правильным; старая версия упоминает Object.h

1 Ответ

5 голосов
/ 18 июня 2009

Я понимаю ситуацию так: есть две библиотеки времени выполнения для Objective-C. Библиотека Apple, которая использует NSObject, и библиотека GNU, которая использует Object. Если вы разрабатываете для платформы Apple, используйте их среду выполнения. Если вы разрабатываете для платформы не от Apple, вы используете другую.

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