Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
 Аватар для Union
17 / 17 / 0
Регистрация: 16.08.2010
Сообщений: 252

Вопрос по вектору string'ов

24.04.2011, 21:49. Показов 3962. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не совсем представляю как работает вектор стрингов
C++
1
std::vector<std::string> texts;
Вектор по стандарту располагается в едином куске памяти. Если я использую вектор чаров (массивов), они фиксированного размера. Это значит что при выделении памяти методом reserve я четко выделяю себе нужный кусок памяти, при изменении элемента в середине, сдвига всего, что идет после - не происходит. А вот со стрингом не понятно. При выделении памяти вродебы размер элемента составляет 1 байт... Получается количество элементов, которое поместится в выделенную память предсказать нельзя.
Если я меняю содержимое стринга, находящегося в середине вектора, всё, что идёт после - смещается, если размер нового стринга не равен размеру старого. Я прав?
Или вектор стрингов - это вектор указателей, а информация хранится вне его?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.04.2011, 21:49
Ответы с готовыми решениями:

[Вопрос] Перехват прерывания прямым доступом к вектору прерывания
Всех приветствую! В данный момент разбираюсь с обработкой аппаратного прерывания (прерывание таймера 08h и 1Ch, -//- клавиатуры 09h). ...

Поиск по вектору
есть структура. нас интересует первый элемент fntname остальные не важны typedef struct { char fntname; XmFontList...

Движение по вектору
Добрый день! Есть такой вопрос по матлабу: имеется 2 вектора: x =; y =; Можно ли реализовать движение по данному вектору...

28
бжни
 Аватар для alex_x_x
2473 / 1684 / 135
Регистрация: 14.05.2009
Сообщений: 7,162
25.04.2011, 01:51
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от kravam Посмотреть сообщение
, но код той же функции str.size() в оперативной памяти место занимает, как ни крути.
strlen тоже отъест место от бинарника
Цитата Сообщение от kravam Посмотреть сообщение
И коды других функций методов тоже.
тут уже говорилось, что при загрузке программы в озу код функций-членов будет встречатся единожды, речь о грошах идет
Цитата Сообщение от kravam Посмотреть сообщение
Вот что я имел ввиду, говоря о расходе памяти в случае со string.
это странно

Цитата Сообщение от kravam Посмотреть сообщение
А указатель на char 4 байта ни больше ни меньше.
да нет же
0
25.04.2011, 01:53

Не по теме:

alex_x_x, хм... я тоже думал, что в 32-хбитных системах указатель занимает 4 байта...

0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
25.04.2011, 01:53
Указатель зависит от целевой архитектуры. Капитан намекает, что он может быть и 8 байт и сколько либо еще.
1
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
25.04.2011, 12:20
ОК,а тогда, а тогда чё за херь вылезает у меня в dev c++ типа подсказки, когда я пишу так:
C++
1
2
[FONT=monospace]string.
 [/FONT]
Вот после того,как я ставлю точку вылезает подсказка из пяти строчек

Я так понимаю, эти все переменные класса sring и они есть. И они занимают память
Миниатюры
Вопрос по вектору string'ов  
0
Эксперт С++
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
25.04.2011, 15:54
А что, кто-то спорил, что поля класса память не занимают?
0
 Аватар для Union
17 / 17 / 0
Регистрация: 16.08.2010
Сообщений: 252
25.04.2011, 16:02  [ТС]
Вы явно ушли от темы. Я спрашивал применительно к вектору.
Нужные мне ответы я получил.
0
25.04.2011, 16:04

Не по теме:

Union, с чем вас и поздравляю.

1
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
25.04.2011, 16:10
Цитата Сообщение от silent_1991 Посмотреть сообщение
А что, кто-то спорил, что поля класса память не занимают?
ну вот ещё расходы на память. Я это всё автору, пусть знает правду.
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
25.04.2011, 16:21
kravam, Не столь огромные расходы при сейчашних компах.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.04.2011, 16:21

Альтернатива вектору
Добрый день. Такая проблема. имеется модуль сопряжения, который соединяет ддлки от 2005 и 2010 студии. там есть некий класс, который...

Параллельность градиента вектору
Помогите пожалуйста разобраться, необходимо найти все точки пространства, в которых градиент поля u=x^{3}+y^{3}+z^{3}-3xyz параллелен оси...

Движение изображения по вектору
Делаю простую игру, что-то типа космического шутера. При нажатии на кнопки право и лево будет поворачиваться изображение самого корабля(с...

Поиск, Сортировка по Вектору в с++
Не могу разобраться как обратится к элементу класса например name. в векторе groupArray. Из за этого не могу реализовать поиск по имени,...

Поиск строки по вектору
Добрый день. Помогите разобраться с проблемой пожалуйста: я перегоняю данные из бинарного файла в вектор (так нужно по заданию), затем мне...


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

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
Вот представьте что вам дали бессмертие.
kumehtar 24.07.2026
Вот представьте что вам дали бессмертие, ничего более не меняя. Вообще ничего, только бессмертие в нынешнем виде. Рады были бы? Что бы вы тут делали всё это время? Никакой пенсии. Никакого нового. . .
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы Кратко. . .
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем **Полевые заметки о двухнедельной совместной работе**. . .
Теория всего 12. ВГК на планете в стратегической игре "терра"
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики 1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru