|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.10.2009, 17:57 | #1 |
Пользователь
Регистрация: 03.10.2009
Сообщений: 19
|
Удаление/добавление.
Не знаю в какой теме писать.В программе надо сделать удаление и добавление препаратов на складе.Удаление по ID товара.
Код:
Код:
|
18.10.2009, 22:08 | #2 | |
Участник клуба
Регистрация: 18.10.2008
Сообщений: 1,409
|
а как у вас организовано хранение информации о товарах? массив, иль динамическая структура?
Цитата:
|
|
19.10.2009, 00:32 | #3 |
Пользователь
Регистрация: 03.10.2009
Сообщений: 19
|
Меня int FarmIDs всем устраивает.Просто мне так условие поставили.
Код:
Последний раз редактировалось Serror; 19.10.2009 в 05:35. |
19.10.2009, 09:41 | #4 | |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
Цитата:
Вообще класс store спроектирован неправильно. Нужно выделять отдельный класс farm и в store хранить уже farm'ы, а не кучу отдельных динамических массивов заводить. Это не труъ ООП какое-то. Итак, стоит задача написать свой std::vector (почему готовый вектор не используется - тоже является для меня вопросом). Так вот. Нужно: 1) При удалении товара, смещать хвост массива влево, чтобы затереть удаленный элемент 2) Так же нужно как-то хранить выделенный объем памяти под товар. Удалили товар и еще одно вакантное место освободилось, значит можно добавить новый товар без перевыделения памяти 3) При добавлении объекта, выделенная память может быть вся занята и нужно будет выделить новый кусок памяти побольше и слить туда весь товар 4) Не нужно забывать синхронизировать элементы массивов FarmIDs и FarmNames, т.е. при удалении и добавлении элементов будет двойная работа по перевыделению памяти под эти 2 массива. В общем, почитайте как в STL устроен vector и реализуйте по тому же принципу. Хотя, если класс store менять совсем нельзя, то придётся на каждый чих память перевыделять, т.к. хранить объем выделенной памяти просто будет негде. ЗЫ. Посмотреть бы на препода, который такое задаёт. Приучает к плохому проектированию чтоли... ЗЫ2. Это конечно если я правильно понял, что store - это склад, FarmIDs - массив идентификаторов товара на складе, а FarmNames - массив названий товара. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Добавление и удаление записей из БД (Access) | a_n_n_a | БД в Delphi | 26 | 02.01.2016 18:13 |
Добавление (удаление) строк в таблице | inside9 | Microsoft Office Excel | 29 | 01.01.2012 22:31 |
Удаление и добавление строки. | Serror | Общие вопросы C/C++ | 6 | 11.10.2009 18:59 |
Удаление/добавление полей runtime | /Denis/ | БД в Delphi | 1 | 06.08.2008 22:35 |
Добавление и удаление записей в Listview | Scorpeon | Компоненты Delphi | 0 | 08.06.2007 23:09 |