You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

802 lines
30 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#include <iostream>
#include <cstring>
#include <iomanip>
#include <vector>
#include<fstream>
using namespace std;
class item {
private:
string itemname;
int intnum{ 0 }, strnum{ 0 };
vector<int> intentry;
vector<string> strentry;
friend class kind;
friend class handbook;
public:
item(const item &_item) {
itemname = _item.itemname;
intnum = _item.intnum;
strnum = _item.strnum;
intentry = _item.intentry;
strentry = _item.strentry;
}
item() {
}
~item() {
}
};
class kind {
public:
string kindname;
int intnum{0};
vector<string> intname;
int strnum{0};
vector<string> strname;
vector<item> itemlist;
kind(vector<item> _itemlist) {
this->itemlist = _itemlist;
}
kind() {
}
~kind(){}
};
class handbook {
public:
vector<kind> kindlist;
int password{ 123456 };
handbook(vector<kind> _kindlist) {
this->kindlist = _kindlist;
}
handbook() {
}
~handbook() {
}
void kindprint(int n) {
cout << "\n种类名" << kindlist[n].kindname;
for (int i{ 0 }; i < kindlist[n].intnum; i++) {
cout << "\n第" << i + 1 << "个词条:" << kindlist[n].intname[i];
}
for (int i{ 0 }; i <= kindlist[n].strnum; i++) {
cout << "\n第" << kindlist[n].intnum + i + 1 << "个词条:" << kindlist[n].strname[i];
}
}
void itemprint(int n0, int n1) {
cout << "\n物品名" << kindlist[n0].itemlist[n1].itemname;
for (int i{ 0 }; i < kindlist[n0].intnum; i++) {
cout << "\n" << kindlist[n0].intname[i] << ":" << kindlist[n0].itemlist[n1].intentry[i];
}
for (int i{ 0 }; i <= kindlist[n0].strnum; i++) {
cout << "\n" << kindlist[n0].strname[i] << ":" << kindlist[n0].itemlist[n1].strentry[i];
}
}
void myregister() {
cout << "请选择你的登录方式: 1.管理员登录 2.游客登录\n";
cout << "请输入你的选择(输入方式前的序号后按回车):";
int sel, password0{1};
while (cin >> sel) {
if (sel != 1 && sel != 2) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel == 1) {
cout << "请输入管理员密钥(输入1进入游客模式):";
while (cin >> password0) {
if (password0 != password && password0!=1) {
cout << "密码错误!\n" << "请重新输入你的密码输入1进入游客模式";
}
else break;
}
}
if (password0 == 1)sel = 2;
menu(sel);
}
void menu(int sel) {
system("cls");
string sel1;
if (sel == 1) {
cout << "\t\t\t**********欢迎来到学生成绩管理系统**********" << endl;
cout << "\t\t\t你可以进行以下操作:" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 1 信息创建(种类/物品) |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 2 信息删除(种类/物品) |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 3 信息修改(种类/物品) |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 4 物品清单查看 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 5 物品信息查找 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 6 物品数据分析 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 7 清空系统数据 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 0 退出 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t请选择【0-7】";
while (cin >> sel1) {
if (sel1 != "1" && sel1 != "2" && sel1 != "3" && sel1!="4" && sel1!="5" && sel1!="6" && sel1!="7" && sel1!="0") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel1 == "1") {
system("cls");
cout << "请选择你要创建的类别: 1.种类 2.物品\n";
cout << "请输入你的选择(输入方式前的序号后按回车):";
string sel2;
while (cin >> sel2) {
if (sel2 != "1" && sel2 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel2 == "1")
kindcreate();
else
itemcreate();
}
else if (sel1 == "2") {
system("cls");
cout << "请选择你要删除的类别: 1.种类 2.物品\n";
cout << "请输入你的选择(输入方式前的序号后按回车):";
string sel2;
while (cin >> sel2) {
if (sel2 != "1" && sel2 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel2 == "1")
kinddelete();
else
itemdelete();
}
else if (sel1 == "3") {
system("cls");
cout << "请选择你要修改的类别: 1.种类 2.物品\n";
cout << "请输入你的选择(输入方式前的序号后按回车):";
string sel2;
while (cin >> sel2) {
if (sel2 != "1" && sel2 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel2 == "1")
kindamend();
else
itemamend();
}
else if (sel1 == "4") {
inventory();
}
else if (sel1 == "5") {
search();
}
else if (sel1 == "6") {
}
else if (sel1 == "7") {
system("cls");
cout << "是否确定要清空数据? 1.清空 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1") {
password = 123456;
kindlist.clear();
cout << "\n已清空系统数据";
string sel;
cout << "\n输入任意字符后按回车即可返回菜单";
cin >> sel;
menu(1);
}
else {
menu(1);
}
}
else {
system("cls");
cout << "是否保存数据? 1.保存 2.直接退出";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1") {
writefile();
cout << "已保存系统数据";
string sel;
cout << "\n输入任意字符后按回车即可退出";
cin >> sel;
}
}
}
else {
cout << "\t\t\t**********欢迎来到学生成绩管理系统**********" << endl;
cout << "\t\t\t你可以进行以下操作:" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 1 物品清单查看 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 2 物品信息查找 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 3 物品数据分析 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t| 0 退出 |" << endl;
cout << "\t\t\t|------------------------------------------|" << endl;
cout << "\t\t\t请选择【0-3】";
while (cin >> sel1) {
if (sel1 != "1" && sel1 != "2" && sel1 != "3" && sel1 != "0") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel1 == "1") {
inventory();
}
else if (sel1 == "2") {
search();
}
else if (sel1 == "3") {
}
else {
}
}
}
void kindcreate() {
kind kind0;
system("cls");
cout << "请输入你要添加的种类名:";
cin>> kind0.kindname;
cout << "请输入你要创建的数字型词条数:";
cin >> kind0.intnum;
for(int i{0};i< kind0.intnum;i++){
cout << "请输入你要创建的第" << i + 1 << "个数字型词条名:";
string name;
cin >> name;
kind0.intname.push_back(name);
}
cout << "请输入你要创建的文字型词条数:";
cin >> kind0.strnum;
for (int i{ 0 }; i < kind0.strnum; i++) {
cout << "请输入你要创建的第" << i + 1 << "个文字型词条名:";
string name;
cin >> name;
kind0.strname.push_back(name);
}
kind0.strname.push_back("备注");
kindlist.push_back(kind0);
system("cls");
cout << "创建成功!\n";
int n = kindlist.size()-1;
kindprint(n);
cout << "\n是否继续创建 1.继续创建 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel2;
while (cin >> sel2) {
if (sel2 != "1" && sel2 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel2 == "1")
kindcreate();
else
menu(1);
}
void itemcreate() {
system("cls");
cout << "请选择你要创建的位置:\n";
for (int i{ 0 }; i < kindlist.size(); i++) {
cout << i + 1 << "." << kindlist[i].kindname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel2;
while (cin >> sel2) {
if (sel2 < 1 || sel2 >kindlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
item item0;
system("cls");
cout << "请输入你要添加的物品名:";
cin >> item0.itemname;
item0.intnum=kindlist[sel2-1].intnum;
for (int i{ 0 }; i < item0.intnum; i++) {
cout << "请输入你要创建物品的“" << kindlist[sel2-1].intname[i] << "”词条内容:";
int entry;
cin >> entry;
item0.intentry.push_back(entry);
}
item0.strnum = kindlist[sel2-1].strnum;
for (int i{ 0 }; i <= item0.strnum; i++) {
cout << "请输入你要创建物品的“" << kindlist[sel2-1].strname[i] << "”词条内容:";
string name;
cin >> name;
item0.strentry.push_back(name);
}
kindlist[sel2-1].itemlist.push_back(item0);
system("cls");
cout << "创建成功!\n";
int n = kindlist[sel2 - 1].itemlist.size()-1;
itemprint(sel2 - 1, n);
cout << "\n是否继续创建 1.继续创建 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
itemcreate();
else
menu(1);
}
void kinddelete() {
system("cls");
cout << "请选择你要删除的种类:\n";
for (int i{ 0 }; i < kindlist.size(); i++) {
cout << i + 1 << "." << kindlist[i].kindname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel2;
while (cin >> sel2) {
if (sel2 < 1 || sel2 >kindlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
vector<kind>::iterator it=kindlist.begin();
for (int i{ 1 }; i < sel2; i++)
it++;
kindlist.erase(it);
system("cls");
cout << "删除成功!\n";
cout << "\n是否继续删除 1.继续删除 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
kinddelete();
else
menu(1);
}
void itemdelete() {
system("cls");
cout << "请选择你要删除的物品所属的种类:\n";
for (int i{ 0 }; i < kindlist.size(); i++) {
cout << i + 1 << "." << kindlist[i].kindname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel2;
while (cin >> sel2) {
if (sel2 < 1 || sel2 >kindlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
system("cls");
cout << "请选择你要删除的物品:\n";
for (int i{ 0 }; i < kindlist[sel2-1].itemlist.size(); i++) {
cout << i + 1 << "." << kindlist[sel2-1].itemlist[i].itemname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel1;
while (cin >> sel1) {
if (sel1 < 1 || sel1 >kindlist[sel2-1].itemlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
vector<item>::iterator it = kindlist[sel2-1].itemlist.begin();
for (int i{ 1 }; i < sel1; i++)
it++;
kindlist[sel2-1].itemlist.erase(it);
system("cls");
cout << "删除成功!\n";
cout << "\n是否继续删除 1.继续删除 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
kinddelete();
else
menu(1);
}
void kindamend() {
system("cls");
cout << "请选择你要修改的种类:\n";
for (int i{ 0 }; i < kindlist.size(); i++) {
cout << i + 1 << "." << kindlist[i].kindname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel2;
while (cin >> sel2) {
if (sel2 < 1 || sel2 >kindlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
system("cls");
int j{ 1 };
cout << "1."<<kindlist[sel2-1].kindname << "\t";
for (int i{ 0 }; i < kindlist[sel2-1].intnum; i++) {
j++;
cout << j << "." << kindlist[sel2 - 1].intname[i] << "\t\t ";
}
for (int i{ 0 }; i <= kindlist[sel2-1].strnum; i++) {
j++;
cout << j << "." << kindlist[sel2 - 1].strname[i] << "\t\t ";
}
cout << endl;
cout << "请选择你要修改的内容:\n";
cout << "\n请输入你的选择输入内容前的序号后按回车";
int sel1;
while (cin >> sel1) {
if (sel1 < 1 || sel1 >kindlist[sel2-1].intnum+kindlist[sel2-1].strnum+2) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel1 == 1)
{
cout << "你想将“" << kindlist[sel2 - 1].kindname << "”修改为:";
cin >> kindlist[sel2-1].kindname;
}
else if (sel1 > 1 && sel1 < kindlist[sel2 - 1].intnum + 2)
{
cout << "你想将“" << kindlist[sel2 - 1].intname[sel1 - 2] << "”修改为:";
cin >> kindlist[sel2 - 1].intname[sel1 - 2];
}
else
{
cout << "你想将“" << kindlist[sel2 - 1].strname[sel1 - kindlist[sel2 - 1].intnum - 2] << "”修改为:";
cin >> kindlist[sel2 - 1].strname[sel1 - kindlist[sel2 - 1].intnum - 2];
}
system("cls");
cout << "修改成功!";
kindprint(sel2 - 1);
cout << "\n是否继续修改 1.继续修改 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
kindamend();
else
menu(1);
}
void itemamend() {
system("cls");
cout << "请选择你要修改的种类:\n";
for (int i{ 0 }; i < kindlist.size(); i++) {
cout << i + 1 << "." << kindlist[i].kindname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel1;
while (cin >> sel1) {
if (sel1 < 1 || sel1 >kindlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
system("cls");
cout << "请选择你要修改的物品:\n";
for (int i{ 0 }; i < kindlist[sel1-1].itemlist.size(); i++) {
cout << i + 1 << "." << kindlist[sel1-1].itemlist[i].itemname << " ";
}
cout << "\n请输入你的选择输入方式前的序号后按回车";
int sel2;
while (cin >> sel2) {
if (sel2 < 1 || sel2 >kindlist[sel1-1].itemlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
system("cls");
int j{ 1 };
cout << "1." << kindlist[sel1 - 1].itemlist[sel2-1].itemname << "\t";
for (int i{ 0 }; i < kindlist[sel1 - 1].intnum; i++) {
j++;
cout << j << "." << kindlist[sel1 - 1].itemlist[sel2-1].intentry[i] << "\t\t ";
}
for (int i{ 0 }; i <= kindlist[sel1 - 1].strnum; i++) {
j++;
cout << j << "." << kindlist[sel1 - 1].itemlist[sel2-1].strentry[i] << "\t\t ";
}
cout << endl;
cout << "请选择你要修改的内容:\n";
cout << "\n请输入你的选择输入内容前的序号后按回车";
int sel;
while (cin >> sel) {
if (sel < 1 || sel >kindlist[sel1 - 1].intnum + kindlist[sel1 - 1].strnum + 2) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel == 1)
{
cout << "你想将“" << kindlist[sel1 - 1].itemlist[sel2-1].itemname << "”修改为:";
cin >> kindlist[sel1 - 1].itemlist[sel2 - 1].itemname;
}
else if (sel > 1 && sel < kindlist[sel1 - 1].intnum + 2)
{
cout << "你想将“" << kindlist[sel1 - 1].itemlist[sel2 - 1].intentry[sel - 2] << "”修改为:";
cin >> kindlist[sel1 - 1].itemlist[sel2 - 1].intentry[sel - 2];
}
else
{
cout << "你想将“" << kindlist[sel1 - 1].itemlist[sel2-1].strentry[sel - kindlist[sel1 - 1].intnum - 2] << "”修改为:";
cin >> kindlist[sel1 - 1].itemlist[sel2 - 1].strentry[sel - kindlist[sel1 - 1].intnum - 2];
}
system("cls");
cout << "修改成功!";
itemprint(sel1 - 1,sel2-1);
cout << "\n是否继续修改 1.继续修改 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
itemamend();
else
menu(1);
}
void inventory() {
system("cls");
cout << "请选择你要查看的清单范围:\n";
cout << "1.全部\t";
for (int i{ 0 }; i < kindlist.size(); i++)
cout << i + 2 << "." << kindlist[i].kindname << "\t";
cout << "\n请输入你的选择输入选择前的序号后按回车";
int sel1;
while (cin >> sel1) {
if (sel1 < 1 || sel1 >kindlist.size()+1) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel1 == 1) {
int j{ 0 };
vector<int>jx,jy;
cout << "全部:\n";
for (int i{ 0 }; i < kindlist.size(); i++) {
for (int k{ 0 }; k < kindlist[i].itemlist.size(); k++) {
j++;
cout << " " << j << "." << kindlist[i].itemlist[k].itemname<<endl;
jx.push_back(i);
jy.push_back(k);
}
}
int sel;
system("cls");
cout << "请选择你要查看的物品\n" << "请输入你的选择(输入要查看物品前的序号):";
while (cin >> sel) {
if (sel < 1 || sel >j) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
system("cls");
itemprint(jx[j], jy[j]);
}
else{
cout << kindlist[sel1 - 2].kindname<<":\n";
for (int i{ 0 }; i < kindlist[sel1 - 2].itemlist.size(); i++) {
cout << " " << i + 1 << "." << kindlist[sel1 - 2].itemlist[i].itemname << endl;
}
int sel;
cout << "请选择你要查看的物品\n" << "请输入你的选择(输入要查看物品前的序号):";
while (cin >> sel) {
if (sel < 1 || sel >kindlist[sel1 - 2].itemlist.size()) {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
system("cls");
itemprint(sel1 - 2, sel - 1);
}
cout << "\n是否继续查看 1.继续查看 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
inventory();
else
menu(1);
}
void search() {
system("cls");
cout << "请输入你要查找的物品名:";
string name;
bool a = 0;
cin >> name;
for (int i = 0; i < kindlist.size(); i++) {
for (int j = 0; j < kindlist[i].itemlist.size(); j++) {
if (name == kindlist[i].itemlist[j].itemname) {
a = 1;
itemprint(i, j);
}
}
}
if (a == 0) {
cout << "\n未查找到输入的物品名";
}
cout << "\n是否继续查找 1.继续查找 2.返回菜单";
cout << "\n请输入你的选择输入方式前的序号后按回车";
string sel3;
while (cin >> sel3) {
if (sel3 != "1" && sel3 != "2") {
cout << "输入字符不合法,请重新输入你的选择:";
}
else break;
}
if (sel3 == "1")
search();
else
menu(1);
}
void readfile() {
ifstream kind12;
kind12.open("myfile.txt",ios::in);
kind12 >> password;
int kindnum;
kind12 >> kindnum;
for (int i = 0; i < kindnum; i++)
{
kind kind0;
int itemnum0;
kind12 >> itemnum0;
kind12 >> kind0.intnum;
kind12 >> kind0.strnum;
kind12 >> kind0.kindname;
for (int a = 0; a < kind0.intnum; a++)
{
string intname0;
kind12 >> intname0;
kind0.intname.push_back(intname0);
}
for (int b = 0; b <= kind0.strnum; b++)
{
string strname0;
kind12 >> strname0;
kind0.strname.push_back(strname0);
}
for (int j = 0; j < itemnum0; j++)
{
item item0;
kind12 >> item0.itemname;
for (int k{ 0 }; k < kind0.intnum; k++)
{
int intentry0;
kind12 >> intentry0;
item0.intentry.push_back(intentry0);
}
for (int h{ 0 }; h <= kind0.strnum; h++)
{
string strentry0;
kind12 >> strentry0;
item0.strentry.push_back(strentry0);
}
kind0.itemlist.push_back(item0);
}
kindlist.push_back(kind0);
}
kind12.close();
}
void writefile() {
ofstream kind22;
kind22.open("myfile.txt", ios::out);
kind22 << password << endl;
kind22 << kindlist.size()<<endl;
for (int i = 0; i < kindlist.size(); i++)
{
kind22 << kindlist[i].itemlist.size()<<endl;
kind22 << kindlist[i].intnum<<endl;
kind22 << kindlist[i].strnum<<endl;
}
for (int i = 0; i < kindlist.size(); i++)
{
kind22 << kindlist[i].kindname << endl;
for (int m = 0; m < kindlist[i].intnum; m++)
{
kind22 << kindlist[i].intname[m]<<endl;
}
for (int w = 0; w <= kindlist[i].strnum; w++)
{
kind22 << kindlist[i].strname[w]<<endl;
}
for (int j = 0; j < kindlist[i].itemlist.size(); j++)
{
kind22 << kindlist[i].itemlist[j].itemname << endl ;
for (int k{ 0 }; k < kindlist[i].intnum; k++)
{
kind22 << kindlist[i].itemlist[j].intentry[k] << endl;
}
for (int h{ 0 }; h <= kindlist[i].strnum; h++)
{
kind22 << kindlist[i].itemlist[j].strentry[h] << endl;
}
}
}
kind22.close();
}
};
int main()
{
handbook _handbook;
_handbook.readfile();
_handbook.myregister();
return 0;
}