|
4驿站币
设计一个数据库类Database和账号信息类Info
Info类包括私有成员变量:id(int), username(char[]), password(char[]). 后两个字符串长度均小于10
Database类包括私有成员变量:info(Info*), count(int)表示现有账号数量, capacity(int)表示数据库总容量
Database类包括成员函数:
bool push_info(Info f)向info添加f,count加一(如果id重复或超出数据库容量则取消添加)
void get_info(int m)获取id为m的账号信息,如果存在则打印成为一行
bool delete_info(int m)删除id为m的账号信息,并将m之后的数据前移,如果删除成功返回true,如果不存在id为m的,则返回false
输入内容如下:
数据库容量 数据条数n
id(0) username(0) password(0)
id(1) username(1) password(1)
...
id(n-1) username(n-1) password(n-1)
删除数据条数p
id(n)
...
id(n+p-1)
输出内容如下:
id(i) username(i) password(i)
...
当输入内容为:
5 2
1001 hanwei 123456
1002 abcd 0000000
1
1001
输出内容为:
1002 abcd 0000000
主函数已写出,如下:- int main(){
- int capacity, total_data_number, id, delete_data_number;
- char username[10];
- char password[10];
- cin>>capacity>>total_data_number;
- Database d(capacity);
- int* id_array = new int[total_data_number];
- for(int p = 0; p < total_data_number; p++){
- cin>>id>>username>>password;
- id_array[p] = id;
- d.push_info(Info(id, username, password));
- }
- cin>>delete_data_number;
- for(int q = 0; q < delete_data_number; q++){
- cin>>id;
- d.delete_info(id);
- }
- for(int k = 0; k < total_data_number; k++)
- d.get_info(id_array[k]);
- return 0;
- }
复制代码
请问怎么去删除那些数据呢?如何实现这个类呢? |
上一篇: C++下一篇: 求各位大佬推荐几本书
|