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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
#1

Размещение map'а в памяти - C++

03.10.2011, 19:31. Просмотров 1022. Ответов 6
Метки нет (Все метки)

Элементы вектора гарантировано размещаются в памяти рядом, в случае списка элементы лежат где попало, но для этого есть прямые и обратные ссылки у элементов того же списка...
Вопрос - а как размещаются элементы того же std::map?, знаю что каждый элемент представляет пару, но как именно в памяти они размещаются не очень

Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2011, 19:31     Размещение map'а в памяти
Посмотрите здесь:

C++ Map STL - максимальный объем памяти
размещение файлов в оперативной памяти C++
C++ Размещение объекта в памяти
C++ Выделить в памяти 1024 ячейки по 8 байт и вывести их адреса(МИНИ менеджер памяти))
C++ Размещение переменных в памяти
C++ Размещение объектов в заданных блоках памяти
Динамическое размещение объекта в определённом месте памяти с последующим её освобождением C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6548 / 3968 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.10.2011, 19:34     Размещение map'а в памяти #2
std::map построен на основе красно-черного дерева потому в памяти он расположен как и список - "где попало"
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
03.10.2011, 19:39  [ТС]     Размещение map'а в памяти #3
Цитата Сообщение от Jupiter Посмотреть сообщение
std::map построен на основе красно-черного дерева потому в памяти он расположен как и список - "где попало"
я так понимаю элементы пары хранятся смежно, но сами пары раскиданы по памяти?
Jupiter
Каратель
Эксперт C++
6548 / 3968 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.10.2011, 19:40     Размещение map'а в памяти #4
Цитата Сообщение от norge_goth Посмотреть сообщение
я так понимаю элементы пары хранятся смежно, но сами пары раскиданы по памяти?
именно так
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
03.10.2011, 19:43  [ТС]     Размещение map'а в памяти #5
Цитата Сообщение от Jupiter Посмотреть сообщение
именно так
спасибо, а что насчет std::set, std::multiset?
Jupiter
Каратель
Эксперт C++
6548 / 3968 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.10.2011, 19:49     Размещение map'а в памяти #6
Цитата Сообщение от norge_goth Посмотреть сообщение
std::set, std::multiset
так же как и std::map - на основе деревьев
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.10.2011, 19:51     Размещение map'а в памяти
Еще ссылки по теме:

Размещение класса в динамической памяти C++
C++ Размещение элементов в памяти
Приведение map<int, B> к map<int, A> C++
C++ Размещение в памяти данных
Работа с map<string, map<string, string>> C++

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

Или воспользуйтесь поиском по форуму:
talis
 Аватар для talis
789 / 541 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
03.10.2011, 19:51     Размещение map'а в памяти #7
set'ы - это бинарные деревья поиска

Добавлено через 1 минуту
norge_goth, вот, почитайте.
Yandex
Объявления
03.10.2011, 19:51     Размещение map'а в памяти
Ответ Создать тему
Опции темы

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