AverardoDE
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Можете помочь. Есть задача: --- Разработать программу для управления базой данных «Фонотека». Реализовать функции создания в ней записи, ее редактирования, удаления и поиска записи по значению поля. Запись в базе данных содержит следующие поля: исполнитель, название альбома, жанр, год выпуска. --- Просто мы решали до этого задачи как минимум в раза 3 легче, а тут не знаю как начать. Прошу помощи в реализации программы. Еще раз повторюсь что я не прошу написать код целиком (хотя можно ). П.С. Нужно обязательно использовать класс, но т.к. я ничего не понимаю пока в наследовании и т.п. нужен просто класс с методами и функция main вызывающая этот класс. Добавлено: И вот еще небольшой вопрос. Ненадо только о том, что это такое, кто так пишет и т.п. --- Код: #include<iostream> #include<string> using namespace std; class record_library { private: char **performer = new char*[1]; char **album_title = new char*[1]; char **genre = new char*[1]; short int *year = new short int[1]; short int number = 0; public: void new_item() { number++; for (int i = 0; i < number; i++) { performer[i] = new char[25]; album_title[i] = new char[25]; genre[i] = new char[25]; } if (number == 1) { cout << "Performer = " << endl; cin.getline(performer[0], 25); cout << "Album Title = "; cin.getline(album_title[0], 25); cout << "Genre = "; cin.getline(genre[0], 25); cout << "Year = "; cin >> year[0]; } else { } } void print_all() { for (int i = 0; i < number; i++) { cout << endl << "Performer = " << performer[i] << ", Album Title = " << album_title[i] << ", Genre = " << genre[i] << ", Year = " << year[i] << endl; } } }; int main() { record_library items; short int type = 0; while (type != 6) { cout << "1 - Add, 2 - Update, 3 - Delete, 4 - Search, 5 - Print, 6 - Exit" << endl; cin >> type; switch (type) { case 1: items.new_item(); break; case 5: items.print_all(); break; } } system("pause"); return 0; } | -- Вопрос следующий. Почему при использовании конструкции switch ввод в строке cin.getline(performer[0], 25); пропускается. Допустим я в программе жму 1, и ввод строки performer как бы перепрыгивает. Если убрать switch и просто ввести items.new_item(); все норм. |