|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
||||||
Как записать в вектор структуру? Это вообще возможно сделать?27.03.2015, 01:39. Показов 9225. Ответов 37
Метки нет (Все метки)
Привет всем!
Как записать в вектор структуру? Это вообще возможно сделать? Надо, чтоб первая строка из файла записывалась в вектор, данные типа char разделены ";" (CSV файл), сколько столбцов будет неизвестно, поэтому выбрал вектор, длинна данных в строке тоже разная, поэтому выбрал string. Так показалось проще и рациональнее, чем делать динамические массивы. Возможно, я запутался с синтаксисом, подскажите...
0
|
||||||
| 27.03.2015, 01:39 | |
|
Ответы с готовыми решениями:
37
как можно сделать это? если вообще возможно (не задача) Как своими руками сделать лабораторный бп из обычного компьютерного бп? Это возможно вообще? Как найти правильные числа. И возможно ли это вообще? |
|
2444 / 1842 / 406
Регистрация: 15.12.2013
Сообщений: 8,243
|
|
| 27.03.2015, 01:57 | |
|
russian_pepper, а зачем вам вообще структура с единственным полем типа std::string?
0
|
|
|
20 / 20 / 14
Регистрация: 07.02.2015
Сообщений: 145
|
||||||
| 27.03.2015, 02:00 | ||||||
|
Нужно создать вспомогательную структуру -
Но, как выше уже сказали, в структуре из одного поля нет смысла.
1
|
||||||
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
|
| 27.03.2015, 02:00 [ТС] | |
|
Дальше, возможно, в структуру поля добавятся.
0
|
|
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
||||||
| 27.03.2015, 02:10 | ||||||
Сообщение было отмечено russian_pepper как решение
Решение
1
|
||||||
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
||||||
| 27.03.2015, 02:47 [ТС] | ||||||
|
Хорошо, а как тогда вобще без структуры сделать если только данные типа string в вектор записывать?
Вектор должен быть типа string а buf у меня типа char, как-то просто совсем должно быть, а я эту структуру придумал... Тут никак неявное приведение типов не получится...
DISTURB, Хорошо, а как тогда в моём случае сделать правильно без структуры? Если полей в моей структуре больше не будет? Я же не могу мой buf типа char добавлять к вектору типа string.
0
|
||||||
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
|
| 27.03.2015, 02:58 | |
|
0
|
|
|
20 / 20 / 14
Регистрация: 07.02.2015
Сообщений: 145
|
|
| 27.03.2015, 02:58 | |
|
0
|
|
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
||||||
| 27.03.2015, 03:04 | ||||||
1
|
||||||
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
|
| 27.03.2015, 03:15 [ТС] | |
|
Пробовал и куча ошибок сразу...
Добавлено через 7 минут Не работает так...
0
|
|
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
|
| 27.03.2015, 03:17 | |
|
0
|
|
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
|
| 27.03.2015, 03:17 [ТС] | |
|
Спасибо, работает...
0
|
|
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
||||||
| 28.03.2015, 13:57 [ТС] | ||||||
|
Я прочитал тут
https://msdn.microsoft.com/ru-... x1zkx.aspx вроде бы понял к тут работает while (getline(f, buf, ';')) Но ведь тут buf считывается сразу до ";" как в такой цикл теперь вставить, например
0
|
||||||
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
|||||||
| 28.03.2015, 15:03 | |||||||
Тебе в вектор нужно прочитать строки, разделённые ';', из первой строки? Покажи первую строку в файле.
0
|
|||||||
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
||||||
| 28.03.2015, 15:22 | ||||||
|
Для примера:
0
|
||||||
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
|
| 28.03.2015, 15:57 [ТС] | |
|
stringstream - это новое для меня сейчас читаю. В приведённом Вами варианте у меня подчёркивается s в 7-й строке Вашего кода и потом, соответственно getline 9-й.
Первая строка в моём файле: ServerTime;SP;PR;SpPr;AV_INDICATOR_PLUS; AV_INDICATOR_MINUS;INDICATOR;CN;average_ CN;average_CN2;V_SEC;VolumeAverage;+-;V_DayPlus;V_DayMinus;V_DayPlusIndefinit e;V_DayMinusIndefinite;V_Day;V_DayIndefi nite;CN_Open;CN_Close;SUM_INDICATOR;WAPR ICE;TIMESEC;CONNECTIONTIME;CONDITION;BLO CK;ASSETS;SPREAD_1;SPREAD_2;SPREAD_3;SPR EAD_4;SPREAD_5;MiddlePraiceInSpredLtvel_ 1;MiddlePraiceInSpredLtvel_2;MiddlePraic eInSpredLtvel_3;MiddlePraiceInSpredLtvel _4;MiddlePraiceInSpredLtvel_5;LOTSIZE;SE C_PRICE_STEP;STEPPRICET;STEPPRICE;SC;SUM _INDICATOR_PLUS;SUM_INDICATOR_MINUS;LenF ile;n;MyProfit;StockExchangeFee;Brokerag eFee;IOplusSI;INDICATOR_OPEN
0
|
|
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
|
| 28.03.2015, 16:02 | |
Сообщение было отмечено russian_pepper как решение
Решение
1
|
|
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
|
| 28.03.2015, 16:35 [ТС] | |
|
Всё работает, спасибо!
После своих вопросов иногда думаю, что свои способности переоценил взявшись за C++...
0
|
|
|
44 / 1 / 0
Регистрация: 14.06.2014
Сообщений: 152
|
||||||
| 07.04.2015, 02:26 [ТС] | ||||||
|
Здравствуйте!
Не могу до конца понять работу со строковым потоком. После считывания первой строки, мне нужно считывать данные из файла в векторы в соответствии с названиями столбцов в theFirstLineInFile, (первая строка файла). Я пытаюсь сделать считывание данных в соответствующие векторы перебирая значения в векторе theFirstLineInFile (лучше ничего не придумал пока). В результате нужно сделать программу, которая будет обрабатывать несколько файлов с данными, которые иногда менялись местами в столбцах. Поставить в строке 37 while (getline(f, buf, ';')); нельзя, потому, что getline считывает последние значение в строке вместе с первым значением следующей строки и символом "\n" между ними. Я сделал строковый поток s2 но, у меня примерно по 36000 строк в файлах, и я не могу для каждой строки делать строковый поток с новым названием. Снова использовать строковый поток s не получилось. Можете подсказать как это правильно сделать?
0
|
||||||
|
941 / 869 / 355
Регистрация: 10.10.2012
Сообщений: 2,706
|
||||||||||||
| 07.04.2015, 02:44 | ||||||||||||
Если что-то осталось в потоке и нужно очистить, то:
0
|
||||||||||||
| 07.04.2015, 02:44 | |
|
Помогаю со студенческими работами здесь
20
Нужно расшифровать, если это вообще как-то возможно Кто может это переработать для андроида? И вообще это возможно? Как указать счетчику с какого номера продолжать считать записи и возможно ли это вообще ? Как загрузить файл формата .PLT в C++ И возможно ли это вообще, что бы с++ запускал программу? как вообще это сделать? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|