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

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

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

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

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

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

Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2011, 19:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Размещение map'а в памяти (C++):

Размещение элементов в памяти - C++
Добрый день! Подскажите. может ли контейнер STL vector хранить значения типа char (wchar_t)? Если нет, то подскажите, как создать некую...

Размещение в памяти данных - C++
Подскажите отличия,если я читаю данные(вещественные числа) с бинарного файла поэлементно и к примеру если я читаю те же самые данные из...

Размещение функций в памяти - C++
Помогите бедному-зеленому кое-что устаканить в своей голове! Давно тревожит один вопрос: "как расположены функции в памяти?"....

Размещение переменных в памяти - C++
пользуюсь Dev-C++, стало интересно, как компиляторы размещают даныые: последовательно, или как попало? предположим есть объявление int i;...

Размещение объекта в памяти - C++
Возможно ли размещение объекта в заранее выделенной памяти, например в массиве? Тоесть не просто скопировать, а так чтобы создание...

Размещение класса в динамической памяти - C++
Добрый день! Интересует такой вопрос, который я никак не пойму: Есть класс class Container, который создается в динамической памяти. c...

6
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.10.2011, 19:34 #2
std::map построен на основе красно-черного дерева потому в памяти он расположен как и список - "где попало"
1
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
03.10.2011, 19:39  [ТС] #3
Цитата Сообщение от Jupiter Посмотреть сообщение
std::map построен на основе красно-черного дерева потому в памяти он расположен как и список - "где попало"
я так понимаю элементы пары хранятся смежно, но сами пары раскиданы по памяти?
0
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.10.2011, 19:40 #4
Цитата Сообщение от norge_goth Посмотреть сообщение
я так понимаю элементы пары хранятся смежно, но сами пары раскиданы по памяти?
именно так
1
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
03.10.2011, 19:43  [ТС] #5
Цитата Сообщение от Jupiter Посмотреть сообщение
именно так
спасибо, а что насчет std::set, std::multiset?
0
Jupiter
Каратель
Эксперт С++
6559 / 3980 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
03.10.2011, 19:49 #6
Цитата Сообщение от norge_goth Посмотреть сообщение
std::set, std::multiset
так же как и std::map - на основе деревьев
1
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
03.10.2011, 19:51 #7
set'ы - это бинарные деревья поиска

Добавлено через 1 минуту
norge_goth, вот, почитайте.
2
03.10.2011, 19:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.10.2011, 19:51
Привет! Вот еще темы с ответами:

размещение файлов в оперативной памяти - C++
Я бы хотел узнать, есть ли способ разместить в оперативной памяти какие нибудь файлы. Например текстовый и какой нибудь исполнительный exe...

Размещение объектов в заданных блоках памяти - C++
Здорова! Есть от код: //razmewenie ob6ektov v zadanux blokax pam9ti #include <iostream> using std::cout; using std::endl; ...

Динамическое размещение объекта в определённом месте памяти с последующим её освобождением - C++
Доброго времени суток. В C++ имеется возможность размещать объект по чётко определённому, указанному разработчиком, адресу в памяти. В...

Выделить в памяти 1024 ячейки по 8 байт и вывести их адреса(МИНИ менеджер памяти)) - C++
Вот тут появилась такая интересная задача: требуется сделать программу которая управляет 1024 ячейками памяти по 8 байт каждая. т.е. за...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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