Форум программистов, компьютерный форум CyberForum.ru

Создание объекта в цикле - Objective-C

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
eoLithic
0 / 0 / 0
Регистрация: 05.01.2013
Сообщений: 32
27.03.2013, 03:01     Создание объекта в цикле #1
Здравствуйте. Я пишу небольшую карточную программу и у меня возникли небольшие трудности по поводу создания объекта в цикле.
Я почти уверен, что в коде ниже у меня ошибка. Я хочу, чтобы в каждом цикле у меня создавалась новая карта и ее адрес в памяти отправлялся в массив. Но видимо я буду присваивать разные значения одной и той же карте, и в результате у меня будет массив с 52 элементами, которые указывают на один и тот же адрес. У этой карты будет значение suit = 3 и rank = 12;
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
-(id) init
{
    if ( self = [super init] )
    {
        deck = [[NSMutableArray alloc] initWithCapacity:52];
        Card *newCard = [[Card alloc] init];
        
        for ( int suit = 0; suit < 4; suit++ )
            for ( int rank = 0; rank < 13; rank++ )
            {
                newCard.suit = suit;
                newCard.rank = rank;
                [deck addObject:newCard];
            }
        [newCard release];
    }
    return self;
}
Что будет если я изменю немного код и сделаю как ниже: будет ли каждый раз выделяться новый участок памяти и создаваться разные карты?
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
-(id) init
{
    if ( self = [super init] )
    {
        deck = [[NSMutableArray alloc] initWithCapacity:52];
        
        for ( int suit = 0; suit < 4; suit++ )
            for ( int rank = 0; rank < 13; rank++ )
            {
                Card *newCard = [[Card alloc] init];
                newCard.suit = suit;
                newCard.rank = rank;
                [deck addObject:newCard];
                [newCard release] // а надо ли делать релиз каждый раз в конце цикла?
            }
        [newCard release];
    }
    return self;
}
Заранее спасибо. А тем кто пошлет в гугл: умрите.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2013, 03:01     Создание объекта в цикле
Посмотрите здесь:

Objective-C Как получить доступ к переменным объекта класса-родителя?
Objective-C Вызов объекта в keyDown
Objective-C Создание объекта
Не получается связать два объекта Objective-C

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
27.03.2013, 14:22     Создание объекта в цикле #2
Цитата Сообщение от eoLithic Посмотреть сообщение
Что будет если я изменю немного код и сделаю как ниже
Хорошо будет. Вот прямо что надо, то и будет. А если еще и 16-ю строку убрать, он даже падать перестанет.

PS.
Цитата Сообщение от eoLithic Посмотреть сообщение
А тем кто пошлет в гугл: умрите.
Ну зачем же просьбу о помощи завершать хамством и негативом?
eoLithic
0 / 0 / 0
Регистрация: 05.01.2013
Сообщений: 32
27.03.2013, 14:49  [ТС]     Создание объекта в цикле #3
mobidevelop,
Привык, что обязательно найдется умник, который пошлет в гугл.

Спасибо за помощь.
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
27.03.2013, 17:51     Создание объекта в цикле #4
Цитата Сообщение от mobidevelop Посмотреть сообщение
он даже падать перестанет.
Спасибо, поржал.

Цитата Сообщение от eoLithic Посмотреть сообщение
Привык, что обязательно найдется умник, который пошлет в гугл.
Ну так гугл это то место, в котором новичок должен обитать. Помимо сайта документации. А пожелать "умереть", как верно заметил mobidevelop, не очень хорошее начало общения на форуме, позиционирующее Вас как неадекватного человека в первую очередь.

P.S Понимания не жду, но искренне надеюсь
eoLithic
0 / 0 / 0
Регистрация: 05.01.2013
Сообщений: 32
27.03.2013, 21:28  [ТС]     Создание объекта в цикле #5
zulkis,
Порой бывает достаточно трудно сформулировать вопрос именно так, чтобы гугл понял. + не забываем, что ответы в гугле не просто так берутся: добрые люди, которые не страдают отправкойвгуглфилией, пишут ответы и гугл их находит.
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
27.03.2013, 22:00     Создание объекта в цикле #6
На правах доброго человека, уже написавшего тут не один ответ, хочу робко добавить голос в поддержку
zulkis. Все-таки где-то в чем-то он прав, как мне кажется...
С другой стороны, если бы никто не спрашивал, то:
1. Гуглу было бы негде искать
2. Мне было бы нечем развлекаться ;-)
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
28.03.2013, 10:31     Создание объекта в цикле #7
eoLithic, исходя из личного опыта, я Вам точно могу сказать - по вашему вопросу в гугле как минимум 3 страницы ответов сразу будет(учитесь формулировать вопросы, в чем проблема то?). Однако то, что Вы сразу идете спрашивать, не пытаясь самостоятельно найти решение(исходя из Вашего негатива в сторону "посылов в гугл" я пришел к такому выводу), не дает Вам бонуса, ибо отвечать в 50й раз что 2+2=5, а не 4, людям в большинстве своем просто лень. Да и зачем отвечать человеку, который "Испробовал не все варианты"(с).

Была замечательная статья на Хабре по поводу - "А что Вы попробовали перед тем, как прийти и задать вопрос?".
Советую ознакомиться. Если конечно не лень искать будет.

Добавлено через 1 минуту
mobidevelop, насчет обитания в гугле - тенденция сейчас такая. Быстрее найдешь, нежели побежишь в книжный, а потом еще рыться в книжке. Технологии слишком быстро меняются.
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
28.03.2013, 13:31     Создание объекта в цикле #8
zulkis, да знаю я ) Если вы заметили, я тут только один вопрос пока задал. Слепота навалилась, бывает
Просто эпистолярный жанр плохо иронию передает
eoLithic
0 / 0 / 0
Регистрация: 05.01.2013
Сообщений: 32
28.03.2013, 17:09  [ТС]     Создание объекта в цикле #9
Люди задают вопросы на форумах, чтобы услышать ответ.
Какова цена священнику, который на каждый вопрос будет отвечать фразой "В Библии ищи ответ."?
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
28.03.2013, 21:39     Создание объекта в цикле #10
Аналогия не корректна. Священнику деньги платят и всячески уважают, к мнению его авторитетному прислушиваются. Пошлет в библию, пойдут читать. А на форумах чаще срач разводят, который даже диспутом не назовешь. Вероятно, мы наблюдаем рождение еще одного. Сбегаю за пивком и вернусь. Без меня не покусайтесь
Yandex
Объявления
28.03.2013, 21:39     Создание объекта в цикле
Ответ Создать тему
Опции темы

Текущее время: 05:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru