|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.03.2011, 23:24 | #1 |
Пользователь
Регистрация: 10.11.2008
Сообщений: 93
|
Работа с классами и STL
Следующие задания реализовать в виде класса, используя для хранения информации контейнер стандартной библиотеки шаблонов (STL) языка C++. Реализовать методы добавления в конец контейнера, удаления и замены элементов контейнера. Элементы контейнеров реализовать в виде объектов отдельного класса. Реализовать ввод-вывод информации об элементах с помощью стандартных потоков ввода-вывода. С помощью алгоритмов поиска стандартной библиотеки шаблонов (STL) организовать поиск по контейнеру по заданному критерию.
Задание: Разовый платеж за телефонный разговор является структурой с полями: фамилия плательщика, номер телефона, дата разговора, тариф на минуту разговора, время начала разговора, время окончания разговора. Поиск организовать по фамилии, дате, номеру телефона. Я создал класс Base со следующими данными-членами, которые перечислины! Подскажите, что следует делать за этим? Не совсем понимаю суть задачи |
30.03.2011, 23:58 | #2 |
Форумчанин
Регистрация: 29.09.2010
Сообщений: 636
|
создай еще 1 класс в котором будут хранится экземпляры класса Base, намути методы удалить добавить и т.д.
можешь использовать например std::set<Base>, std::vector<Base> можно std::set<Base*>, std::vector<Base*> |
31.03.2011, 00:02 | #3 |
Пользователь
Регистрация: 10.11.2008
Сообщений: 93
|
Понял, но в std уже есть готовые метод добавления в конец контейнера, значит ничего своего изобретать не надо?
и еще, поиск тоже есть в std, но как поиск придется производить среди определенных данных-членов, как это будет выглядеть? |
31.03.2011, 01:07 | #4 |
Форумчанин
Регистрация: 29.09.2010
Сообщений: 636
|
не в std а в некоторых контейнерах stl
изобретать действительно не надо.. ну поиск, а что тут поиск.. в set это find(), для других контейнеров подойдут стандартные функции http://www.cplusplus.com/reference/algorithm/ find Find value in range (function template) find_if Find element in range (function template) вот пожалуйста. или банальным перебором с помощью итераторов можно. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с классами | ImmortalAlexSan | Помощь студентам | 0 | 04.12.2010 14:07 |
STL с классами | Progsenya | Общие вопросы C/C++ | 3 | 06.09.2010 22:06 |
работа с классами | jec | Общие вопросы C/C++ | 30 | 05.09.2010 00:03 |
Работа с классами | Superlotles | Общие вопросы C/C++ | 6 | 16.06.2010 17:15 |
С++: работа с классами | MR_Andrew | Общие вопросы C/C++ | 23 | 01.04.2010 23:46 |