Как правильно инициализировать экземпляр переменной, которая является объектом? - PullRequest
1 голос
/ 05 марта 2010

Я новичок в Objective C, и я уверен, что это простой вопрос, но я не могу понять это: У меня есть класс, который объявляет переменную экземпляра с именем myDeck, которая является частью пользовательского класса, который я создал под названием Deck. Прямо сейчас у меня есть это в моем коде:

В @interface:

Deck *myDeck;

В моем методе инициализации:

Deck *ourDeck = [[Deck alloc]init];
myDeck = ourDeck;

Так что это, кажется, создает myDeck очень хорошо, и я могу вложить значения в него и запустить его методы некоторое время, но я сталкиваюсь с местом, где он перестает существовать, и я получаю ошибку EXC_BAD_ACCESS при попытке используй это.

Я попытался добавить

[myDeck retain];

безрезультатно, он все равно терпит неудачу в тех же местах. Я на самом деле не знаю, как мне это распределить и уложить, у меня такое чувство, что я что-то упускаю, кто-нибудь?

1 Ответ

1 голос
/ 05 марта 2010

Все, что вы там делаете, кажется правильным; кроме того, я думаю, что в первом примере вы могли бы опечатку - переменная экземпляра называется myDeck, а не deck, верно? Если ваш объект исчезает, это потому, что вы слишком часто звонили release или autorelease. Управление памятью в Какао довольно просто. Пойдите, посмотрите документацию для всей информации, которую вы когда-либо хотели.

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