![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
{ int m_q; // фактическое число книг
public:
CBook* m_pBook[MAX_SIZE];//массив указателей на книги
CCatalogue(); ~CCatalogue();
bool ins(const string&,const string&,int);//добавление
bool del (const string&); //удаление
int find (const string&) const; //поиск
void sort(); //сортировка
int getNumberOfBook() const; //возврат количества книг
};
// Оределение методов класса меню CCatalogue
CCatalogue::CCatalogue(): m_q(0){}
CCatalogue::~CCatalogue()
{ for (int i=0;i< m_q;i++)
delete m_pBook[i];
}
// возврат фактического количества книг
int CCatalogue::getNumberOfBook() const { return m_q; }
/* добавление новой книги
Проверить наличие книги в массиве;
2) если книга уже есть в массиве, вернуть ложь если книги нет:
- создать новый объект и занести в массив;
- увеличить число книг в массиве и вернуть истину */
bool CCatalogue::ins(const string& author, const string& title,int year)
{ if (find(title)!= -1) return false;
m_pBook[m_q++] = new CBook(author,title,year);
Return true;
}
/* удаление книги из массива
Проверить наличие книги в массиве
Если книги нет в массиве, вернуть ложь
если книга найдена:
- разрушить найденный объект;
- сжать массив;
- уменьшить число книг в массиве и вернуть истину.*/
bool CCatalogue::del(const string& key)
{ int i = find(key);
if (i < 0) return false;
delete m_pBook[i];
while(i < m_q-1)
m_pBook[i++] = m_pBook[i+1];
Дата публикования: 2015-04-07; Прочитано: 199 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!