私はプログラムの世界ではとても新しいので、今は固執しています。私は、タイトル、著者、出版社、カテゴリー(Dewey小数)、および出版日を含む本のレコードを設計すると仮定しています。ブックリストについては、新しいブックレコードオブジェクトを追加する方法、タイトルが与えられたブックレコードを見つける方法、ブックレコードオブジェクトを削除する方法、およびすべてのブックレコードオブジェクトを表示する方法が必要です。 booklistUIの場合は、メニュー、コマンドプロセッサー、レコードの追加、レコードの削除、すべてのレコードの表示が必要です。私はどこから始めなければならないのか分からない。私はこれまでのところいくつかを持っています...それは正しいですか?C++用の3つのブッククラスを設計する
これは私がこれまで
/*
Title: CSU Bodie.cpp
Description: implements three classes to make a simple searchable list of the library holdings.
*/
#include <iostream>;
#include <string>;
#include <vector>;
using namespace std;
//Define a name class...
class ShortName {
string FirstName;
string LastName;
public:
ShortName(); //Define a default constructor...
ShortName(string, string); //...and an initializing one...
//Define some mutators...
void SetFirst(string First) { FirstName = First; }
void SetLast(string Last) { LastName = Last; }
//...and some accessors...
string GetFirst() { return FirstName; }
string GetLast() { return LastName; }
};
ShortName::ShortName()
{
FirstName = "";
LastName = "";
}
ShortName::ShortName(string First, string Last)
{
FirstName = First;
LastName = Last;
}
//Define a list class...
class ShortNameList {
vector<ShortName> List; //Create a specific sized list...
public:
ShortNameList() {;} //Nothing for it to do at this point...
void AddRecord(string, string);
void ShowList();
};
void ShortNameList::AddRecord(string First, string Last)
{
ShortName NameBuffer;
NameBuffer.SetFirst(First);
NameBuffer.SetLast(Last);
List.push_back(NameBuffer);
}
void ShortNameList::ShowList()
{
int K;
for(K = 0 ; K < List.size() ; K++)
cout << List[K].GetFirst() << " " List[K].GetLast() << endl;
}
class ShortNameUI {
ShortNameList Collection;
public:
ShortNameUI() {;}
void Menu();
void AddNewRecord();
void RunIT();
};
//This gives us options...
void ShortNameUI::Menu()
{
cout << "Choices..." << endl;
cout << "====================================================================" << endl;
cout << "\\tAdd.........allows the user to enter names." << endl;
cout << "\\tDisplay......shows the names." << endl;
cout << "\\tQuit.........terminates the program" << endl;
cout << "====================================================================" << endl;
}
void ShortNameUI::RunIT()
{
string Command;
while(true) {
Menu();
cout << "Command: ";
getline(cin, Command);
if(Command == "Quit")
break;
else if(Command == "Add")
AddNewRecord();
else if(Command == "Display")
Collection.ShowList();
}
}
void ShortNameUI::AddNewRecord()
{
string First, Last;
cout << "Enter Names Below, Stop To Quit" << endl;
while(true) {
cout << "First Name: ";
getline(cin, First);
if(First == "Stop")
break;
cout << "Last Name: ";
getline(cin, Last);
if(Last == "Stop")
break;
Collection.AddRecord(First, Last);
}
}
int main()
{
ShortNameUI NameList;
NameList.RunIT();
}
}
あなたが投稿したコードが、あなたの割り当てのためにやろうとしていることにどのように関係しているのかよくわかりません。あなたが示したコードは一例ですか?姓と名字が必要なあなたの説明に何か不足していますか?しかし、あなたが標準テンプレートライブラリのコンテナを見ることから始めなければならないものは何ですか? – GWW
'#include'や他のプリプロセッサディレクティブの後にセミコロンを置く必要はありません。 –
ハッシュテーブルに要素をハッシュして格納することを学んだことがありますか? –