как выделяется память под контейнеры vector, map в с++
Под элементы контейнера - в куче.1 2
Под сам контейнер - так же, как для любого другого объекта, это зависит от того, как он создан:
new std::vector<int>
- в кучеvoid foo() {std::vector<int> vec;}
- в стеке1 По умолчанию. Написав свой аллокатор, элементы можно поместить куда угодно.
2 Большинство реализаций std::string
не выделяют буфер в куче, если в них немного элементов (не больше пары десятков). В таком случае символы хранятся в самом объекте контейнера. Насколько я знаю, другие стандартные контейнеры так не делают.
Какие существуют виды рекламных бордов и как выбрать подходящий?
Аренда удаленного сервера: цены, провайдеры и условия. Руководство для начинающих
Есть динамический массив под названием buffer, который хранит в себе строку в стиле С(Например какое-нибудь предложение: Hello world) Что делает данная...