![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| gpepsi |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 14.3.2010 Репутация: нет Всего: нет |
есть ли в stl критерии для контейнеров, которые определяют последовательное нахождение их элементов в памяти ?
Стандартом гарантируется это для вектора, но и для std::string тоже есть оператор []; мне просто нужны контейнеры, данные которых можно передать по сети, или записать в файл. Т.к. эти функции принимают на вход буфер данных, то необходимо для них использовать именно эти контейнеры. З.Ы, А в идеале хотелось бы определить для этих контейнеров оператор << как для потоков |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
ход мысли не ясен.. не вижу связи в высказывании.. так нужно передавать сами контейнеры или их данные ?
определите .. что мешает ? в общем суть вопросов не ясна.. Это сообщение отредактировал(а) mes - 7.4.2011, 00:37 |
|||
|
||||
| volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 37 Всего: 85 |
Ну и что, для deque тоже определен оператор [], но он распологается не последовательно. Оператор [] не показатель последовательности расположения в памяти. Вообще расположение в памяти не регламентируется стандартами (пожалуй кроме вектора), и зависит от реализации. Даже string может теоретически распологаться не последовательно (хотя практически такого не встречал). В общем идеология работы с контейнерами такая: не нужно лезть во внутреннее представление. Работайте через интерфейс, предоставляемый библиотекой. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Кроме прочего, если в векторе лежат не POD'ы, их последовательное расположение никак тебе не поможет. Их придется сериализовать поэлементно. И тогда совершенно не важно, последовательно элементы располагаются или нет. -------------------- ... |
|||
|
||||
| borisbn |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 22 Всего: 135 |
для вектора определено в явном виде
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
||||
|
|||||
| gpepsi |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 121 Регистрация: 14.3.2010 Репутация: нет Всего: нет |
ясно.
а что если определять типы std::vector<POD> и std::string boost::is_array может помочь ? |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
gpepsi, что тебе нужно получить в итоге?
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |