![]() |
|
![]() ![]() ![]() |
|
=Женек= |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 548 Регистрация: 20.2.2005 Репутация: 1 Всего: 1 |
Господа, как сделать массив число элементов которого неизвестно?
Нужно мне например в программе редактировать список сотрудников, добавлять, удалять. У меня в заголовках определена сложная структура, все параметры я упаковываю в одну переменную, а потом просто пишу ее в файл. А в структуре есть массивы количество элементов должно быть переменным. Пока обхожусь так: задаю размерность 100, а отдельной переменной в структуре указываю количество заполненных элементов. Мне это кажется неизящным. |
|||
|
||||
artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 39 Всего: 64 |
Копайте в сторону std::vector
Это сообщение отредактировал(а) artsb - 16.8.2012, 10:36 -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
=Женек= |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 548 Регистрация: 20.2.2005 Репутация: 1 Всего: 1 |
Ах.. точно, я же с ним работал когда то.
Но хочется заранее спросить - вот я сформировал переменную, заполнил массив, записал его в файл. При чтении этого массива их файла не возникнет ли проблем от того, что читая его, я не знаю заранее, сколько в нем элементов? |
|||
|
||||
artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 39 Всего: 64 |
Массив записывать не нужно. std::vector это целый класс. Пишите в файл поэлементно и читайте так же.
-------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
=Женек= |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 548 Регистрация: 20.2.2005 Репутация: 1 Всего: 1 |
Минутку...
Допустим я в файл запишу поэлементно. А как я узнао, сколько элементов нужно читать из файла? Может я неясно выразился, попробую еще раз. Я хочу сделать нечто следующее:
То есть я хочу сделать то же самое, что и с определенным массивом, но при этом не заботиться об указании его размерности. Это сообщение отредактировал(а) =Женек= - 16.8.2012, 12:01 |
|||
|
||||
artsb |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2280 Регистрация: 17.7.2007 Где: центр Вселенной Репутация: 39 Всего: 64 |
Я вас понял. А как это должна узнавать функция чтения из файла? ![]() В чём проблема? Вы же сами придумываете структуру файла. Ну так и запишите первым делом количество элементов массива, а потом все ваши структуры. При чтении, первым делом прочитаете количество записей, а затем, в цикле все структуры. Это сообщение отредактировал(а) artsb - 16.8.2012, 13:20 -------------------- Чем отличается умный человек от мудрого? Умный - выпутается из любой ситуации. Мудрый - просто в неё не попадёт. |
|||
|
||||
borisbn |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 18 Всего: 135 |
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
||||
|
|||||
mes |
|
|||
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 6 Всего: 250 |
||||
|
||||
sawfish |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 150 Регистрация: 30.7.2008 Где: Новосибирск Репутация: 8 Всего: 8 |
А что, DynamicArray<тип_переменной> не подходит? Это сообщение отредактировал(а) sawfish - 17.8.2012, 07:31 |
|||
|
||||
Riviero |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 25.3.2010 Репутация: 2 Всего: 3 |
Я бы бд для хранения использовал...
|
|||
|
||||
_Dimon_ |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 25.6.2007 Где: Украина Репутация: 1 Всего: 1 |
Согласен, более - того , получится на много удобнее и понятнее. Вы же всеравно как-бы базу данных создаете, только вручную. Я б использовал БД с Query (что б SQL-запросами можно было выбрать что хочу и как хочу) А с количеством элементов вообще вопрос отпадает. Кстати с БД даже быстрее получится сделать. Извините, может офтоп, но все-же совет .... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |