![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
KOToR |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 3.2.2008 Репутация: нет Всего: нет |
У меня такая проблема: Нужно записать массив типа int (к примеру на 6 эл-тов) как знаение в контейнере map. Вот один из путей который я пробовал для реализации данной задачи:
//Далее пытаюсь прочитать:
Вот, что получаю в результате: First: 15 Second: -842150451,-842150451,-842150451,-842150451,-842150451,-842150451, Press any key to continue Подскажите как правильно записать массив, чтобы получить правильные значения? Это сообщение отредактировал(а) KOToR - 3.2.2008, 20:30 |
||||||
|
|||||||
Sartorius |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1568 Регистрация: 18.7.2006 Где: Ivory tower Репутация: 2 Всего: 37 |
у меня все работает (VS2005)
PS покажи весть cpp-к целиком |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
KOToR, ты записываешь в контейнер только указатель, а не сам массив.
Поэтому тебе надо воспользоваться контейнером - boost::shared_array либо std::vector как вторым параметром для std::map. |
|||
|
||||
KOToR |
|
||||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 3.2.2008 Репутация: нет Всего: нет |
Все работает, прошу прощение за ложную тревогу!!! Дело в том, что здесь написал правильный код, а в самой программе цикл начинал не с нуля, а с другого значения (key=15 и в цикле начинал с нее), в результате чего значения не присваивались!!! Нужно всего-лишь быть более внимательным!!! Еще раз извиняюсь!!!
Вот работающий результат:
Это сообщение отредактировал(а) archimed7592 - 3.2.2008, 20:42 |
||||
|
|||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
Ага, пока ты не попытаешься удалить массиве между этими двумя вызовами. После чего указатель, хранящийся в std::map, станет недействительным. Добавлено через 1 минуту и 25 секунд эм... ![]() |
|||
|
||||
warmonger_ |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 7.7.2007 Где: г. Киев Репутация: 1 Всего: 3 |
конечно не правильно. нужно использовать insert.
--------------------
Make everything as simple as possible, but not simpler.Albert Einstein |
|||
|
||||
JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 6 Всего: 162 |
[key] по несуществующему key сделает insert. |
|||
|
||||
warmonger_ |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 7.7.2007 Где: г. Киев Репутация: 1 Всего: 3 |
JackYF, действительно...
--------------------
Make everything as simple as possible, but not simpler.Albert Einstein |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |