![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| W4FhLF |
|
||||||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 20 Всего: 121 |
Есть такой файл:
Известно, что кол-во чисел в каждой строке постоянно. Отступов(tab, space) может быть сколько угодно. Т.к. кол-во столбцов в файле << кол-ва строк, а общее число столбцов и строк заранее неизвестно, файл описывается такой структурой:
т.е. каждый столбец - отдельный вектор. Задача: рассчитать кол-во необходимых столбцов, выделить память и заполнить массив. С выделением памяти и заполнение всё понятно. Рассчёт кол-ва столбцов реализовал следующим образом:
Глядя на код не получаю морального удовлетворения Это сообщение отредактировал(а) W4FhLF - 6.7.2008, 12:14 -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
||||||
|
|||||||
| jonie |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
а почему бы не
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
||||
|
|||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 20 Всего: 121 |
jonie, ну у тебя для каждой строки выделяется вектор, а у меня наоборот - каждый столбец это отдельный вектор. В случае:
плодить столько объектов не очень-то рационально(например сейчас в файле кол-во столбцов 3, а строк 10 000). Функция extractDouble в любом случае потребует прохождения по всей строке. В общем, кода придётся писать не меньше, а ресурсов он сожрёт больше -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
Решение вполне неплохое, по мне.
|
|||
|
||||
| jonie |
|
||||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
W4FhLF я невнимателен)
ни как минимум ...
ну а далее дочитывать... конечно, можно вообще всех запутать, сделав все на старом добром..
а если строки заканчиваются без пробела, то пойдет и такое:
это в тему "мне не нравится создание временных обхектов"... выбора дофига. ------------- вообще есть boost::spirit... это чтоб вообще никто не понял че делает код 8-) но имхо так не стоит извращаться) стоит сделать так чтобы это было понятно не только тебе.. -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
||||||||
|
|||||||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |