カテゴリを作成するプログラムを作りたいのですが、それについてご存知の方教えて
もらえませんか?コマンド入力で、そのカテゴリ内に追加してたり参照したり、削除し
たりできるようにしたいのですが…。
情報が足りませんでした。つまり、コマンドで「GROUP [グループ名]」と打てばそのグ
ループ名でカテゴリを作成し、その後に「ADD [グループ名] [名前]」と打てばそのグルー
プにメンバーを追加していく…、そのようなプログラムを作りたいのですが、「GROUP」コ
マンドの処理がどうしたらよいかよくわかりません。
心当たりのある方、宜しくお願いします。
まだ全然情報不足です。
「カテゴリ」に必要な情報が何かわかりません。
まずは、どういう情報をどういう構造で保持するつもりなのかを考えて下さい。
groupコマンドでは、それを新たに追加する処理になるはずです。
GROUPコマンドでグループ名のついたカテゴリを作成後、その
メンバー内に「ユーザー名」を保持して、それをリスト構造を使い
保持、また検索や参照などができるようにを作りたいんです。
ADDコマンドでメンバーを追加する時、グループ名を指定して作成した
カテゴリにしか追加できなくし、参照する時なども同様にしたいと思っ
ています。
リスト構造は下記のような構造体を使いたいと思います。
struct LIST{
char GROUP[256];
char NAME[256];
struct TEST *next;
} ;
他に良い方法やアドバイス、また「こうしたほうが良いのでは?」
というものがあれば、どうかレスをお願いします。
文面から想像するに、「カテゴリ」=「グループ」でしょうか?
そうだとすると、何故「カテゴリにつける名前」を「グループ名」と呼ぶのでしょう?
読む人が混乱するだけだと思いますが...
それとも、複数のカテゴリに同じグループ名を与えることで、
カテゴリをグループ化するといった背景があるのでしょうか?
以下、「カテゴリ」=「グループ」と仮定して書きます。
GROUPコマンド:
int main(int argc, char** argv)
{
std::set<std::string> groups;
何処かからグループ名一覧を読み込んでgroupsに格納する;
groups.insert(argv[1]);
gropusの中身を何処かに保存する;
}
ADDコマンド:
struct User
{
std::string group;
std::string name;
};
int main(int argc, char*: argv)
{
std::set<std::string> groups;
何処かからグループ名一覧を読み込んでgroupsに格納する;
if (groupsにargv[1]が含まれない) {
エラー処理;
}
std::vector<User> users;
何処かからユーザー名一覧を読み込んでusersに格納する;
User newUser;
newUser.group = argv[1];
newUser.name = argv[2];
users.push_back(newUser);
usersの内容を何処かに保存する;
}