第二章 把基本的数据结构具体为项目所需要的数据结构
https://gitee.com/mayonaka/LibraryManageSystem
百度云:https://pan.baidu.com/s/1G95yPyGG080b6yXcjc8B0g
提取码:4q8b
链表只是基本的数据结构,在项目中要使用的是储存书本信息的链表,储存用户信息的链表,储存用户的书的信息的链表,因此要对LinerList进一步具体实现才能得到项目所需要的数据结构。本项目要使用的三个数据结构
1. Book: 储存书本信息的链表。
2. User: 储存用户信息的链表
3. UserBook: 储存用户的书的链表
它们都是继承自LinerList基类,并具体实现了LinerList的Init方法,SaveAdd方法,SaveDelete方法。因为三个类基本类似,只是细节上的实现有稍微差别,本次就以User类为例,来介绍一下Init,SaveAdd,SaveDelete,三个方法的具体实现。
Init方法的具体实现:
1. 先用open函数打开数据库
2. 声明一个QSqlQuery类型的变量,该类可以执行MySql语句,同时会保存执行的结果。
3. 使用exec方法执行MySql语句,查询users表中的所有信息。
4. 使用next方法遍历查询结果,并把每一条记录转换成项目定义的数据结构储存起来。
5. 关闭数据库(用完数据库一定要关闭)。
SaveAdd方法的具体实现: