Только Вызов Alloc на Объекте - PullRequest
0 голосов
/ 05 апреля 2011

Я использую следующий код для инициализации моего объекта:

 Spaceship *spaceship = [Spaceship alloc];

    [spaceship fire];

Метод fire вызывается и, кажется, работает нормально. Мой вопрос заключается в том, как это работает, когда я не использовал метод init для инициализации объекта.

Ответы [ 2 ]

2 голосов
/ 05 апреля 2011

Что на самом деле делает ваш метод -init? Если у вас его нет, я открою вам секрет: в текущей реализации времени выполнения, NSObject s -init почти не работает, так что забывайте отправить -init объекту без собственного -init метода - не большая катастрофа. Вы не должны полагаться на это, хотя вы должны посылать -init вашим объектам.

2 голосов
/ 05 апреля 2011

Метод огня будет работать, потому что цель-c просто передаст сообщение получателю. Но любая инициализация, которую вы делаете в вашем init, не выполняется.

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