连接,实现数据库操作功能(该库我手头上无头文件和文档,需自行查询)
11、运算符重载
需要掌握:
分别使用成员函数和友元函数进行运算符重载
+ - && ^等双目运算符的重载
++ --等单目运算符的重载
+= =等双目赋值运算符的重载
<< >>流控制运算符的重载
练习方式:
QString,Qt的iterator迭代器
扩展内容:
[]下标运算符的重载
<>配合模板类型重载,以自行实现新的容器类
12、XML文件解析
需要掌握:
使用QDocument、QDomElement、QDomNode、QDomNodeList类读取XML配置文件并进行解析
13、Qt信号槽机制
需要掌握:Qt信号槽机制
例题:
使用信号槽进行类之间的通讯,以避免耦合度的提高
使用信号槽进行COM通讯、Socket通讯和数据库通讯
14、Qt多线程编程
需要掌握:QThread类,信号槽在不同线程之间通讯时的同步问题(具体可以进行百度,能搜到csdn博客文章)
例题:将网络编程中,服务端程序进行线程分离,与客户端的通讯位于一个线程,数据处理位于另一个线程
15、QTimer
需要掌握:QTimer定时器类
例题:使用QTimer配合信号槽,定期执行任务函数
16、Qt文件操作扩展
需要掌握:
QDir、QFireInfoList类
例题:
指定文件夹中有一系列规定格式的文件,如【测试01.txt】【测试02.txt】……【测试99.txt】,删除其中编号为25-50的文件
综合题:公司员工管理系统
可实现模块列表:
1、使用类的继承,从上到下实现数据结构,先定义统一基类,提供基础的全局调控,然后分部门、职务、成员三类进行继承,然后根据需求进行更详细的继承
2、使用静态成员,提供基于类的公共函数实现全局功能,如在基础类和具体的子类中分别实现特定功能
3、重写<<输入输出流运算符,使用cout进行数据展示
4、使用容器类储存数据对象
5、将程序分离为服务端与客户端,改写为网络系统。需要同时支持TCP与UDP功能,使用信号槽机制进行实现
6、记录日志文件。编写实现Log日志文件类,实现日志记录的所有功能,外部调用仅需log.LogMessage(QString str)方式即可。自动记录内容到文件中,并在行首加入时间记录,精确到年月日时分秒(QTime、QDateTime)。日志文件名以【文件名 年-月-日-时.txt】进行记录,每小时一个文件。日志类记录时会自动记录到当小时的文件中
7、加入XML配置文件。程序会自动从XML配置文件中读取所需的一切信息,如日志文件名称、数据库名称地址账号密码、服务端监听端口、服务端ip地址等配置
8、使用QTimer定时器定时检查日志文件,自动删除过期文件(过期时间在