| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > как добавить элемент в массив увеличив размерност? |
| Автор: Yuran89 28.11.2009, 12:46 | ||||||
| Всем привет. У меня такая проблема: Написал класс avto, в нем данные об автомобиле.Моя задача создать массив таких классов изначально задав размерность этого массива. Данная программа должна осуществлять следующее: 1. Вывод всего списка автомобилей. 2. Поиск по марке автомобиля. 3. Возможность добавления нового автомобиля( нового класса с данными об автомобиле в список). И так первые 2 пункта я сделал, а вот как добавить новый элемент в массив увеличив исходную размерность я не могу додуматься... вот моя функция main():
вот функция вывода всего списка и поиска по марке (добавление элемента я тоже попытался сделать здесь ) :
сам класс:
Я знаю что не верно организовываю добавление элемента, может кто-нибудь разберется как это сделать? [/code] |
| Автор: sQu1rr 28.11.2009, 13:31 | ||||
Особо не читал код, но если хотите увеличить массив, сохранив старые элементы, вы пытаетесь сделать это тут,
То попробуйте так:
А вообще лучше все организовать через связной список |
| Автор: Abyx 28.11.2009, 13:39 |
| это называется размер, а не размерность |
| Автор: andrew_121 28.11.2009, 13:46 |
| Yuran89, Модераторы простите ;) Скажи, на каком форуме ты еще не запостил этот вопрос? |
| Автор: Carlos0N 28.11.2009, 16:53 |
| я не уверен канешно, но помойму единственный вариант - создать новый массив большего размера и скопировать туда все из старого, вобщем sQu1rr все написал)) и кстати, функции доступа к элементам класса лучше называть не int p(); а к примеру int getPrise(); я не придераюсь, просто к правильному оформлению лучше сразу приучатся)) |
| Автор: djamshud 28.11.2009, 19:59 | ||
| Заменить spis=new avto [n]; на
Не забыть подключить файл new. Изменять размер с помощью функции realloc, не забыв при увеличении размера проинициализировать новые элементы (new, см. код выше), а при уменьшении - вызвать деструкторы удаляемых элементов. |
| Автор: shuttle 11.12.2009, 13:12 |
| std::vector |