-
内容大纲
本书基于Qt框架介绍C++面向对象程序设计机制。全书共9章:第1章介绍面向对象程序设计所需的预备知识;第2~8章的内容包括类和对象、继承与派生、类的静态成员与常成员、多态、友元与运算符重载等面向对象的知识,并同步穿插介绍了信号与槽、界面、Qt容器、事件系统与绘图、I/O设备、主窗口和多文档应用程序编程等Qt框架的知识;第9章以实际项目为背景,提供了3个完整的综合实例。本书注重知识点与实践的紧密结合,强调读者编程习惯的养成和自主能力的培养,内容编写上贯彻“实例式”学习法,提供的实例兼顾示范性、实用性、有趣性和拓展性。本书还提供了习题、实验和附录,以全方位支撑读者的实际学习需求。
本书可作为高等院校计算机相关专业“面向对象程序设计”课程的教材,也可作为各类软件开发人员的参考书。 -
作者介绍
-
目录
第1章
程序设计基础
1.1 C++程序设计语言
1.1.1 程序设计语言的发展历史
1.1.2 C和C++
1.2 不同于C语言的C++常见语法
1.2.1 输入和输出操作
1.2.2 bool类型
1.2.3 函数的默认值与函数的声明
1.2.4 引用
1.2.5 动态存储分配
1.2.6 初始化
1.2.7 结构体
1.2.8 强制类型转换
1.2.9 基于范围的for循环
1.3 纯C++项目的开发流程
1.3.1 项目的创建过程
1.3.2 项目内容
1.3.3 项目的构建与运行
1.3.4 编译方式
1.4 程序设计方法
1.4.1 面向过程的结构化程序设计
1.4.2 面向对象程序设计
1.5 Windows图形用户界面编程
1.5.1 基于事件驱动的消息机制
1.5.2 一个最简单的Windows GUI程序
1.5.3 一个完整的Windows GUI程序
1.6 基于Qt的图形用户界面编程
1.6.1 一个最简单的Qt GUI程序
1.6.2 Qt程序的发布
1.6.3 设置程序图标
1.7 编程实例——模拟病毒程序
课后习题
实验1C++和GUI编程初探
第2章
类和对象
2.1 初识类和对象
2.1.1 类的定义
2.1.2 对象的定义与使用
2.1.3 this指针
2.1.4 项目文件的组织
2.2 构造函数和析构函数
2.2.1 构造函数
2.2.2 析构函数
2.3 Qt窗口及部件初探
2.3.1 窗口类
2.3.2 部件类
2.4 更复杂的类和对象
2.4.1 类的组合
2.4.2 对象数组
2.4.3 类的嵌套
2.5 相关指针
2.5.1 对象指针
2.5.2 对象数据成员指针
2.5.3 类数据成员指针
2.5.4 普通函数指针
2.5.5 成员函数指针
2.6 Qt信号与槽通信机制
2.6.1 信号与槽
2.6.2 关联信号与槽
2.7 编程实例——学生成绩的排名
课后习题
实验2类的使用以及简单GUI交互
第3章
继承与派生
3.1 类的继承与派生
3.1.1 派生类的定义
3.1.2 继承方式
3.1.3 重定义成员函数
3.1.4 赋值兼容规则
3.2 派生类的构造与析构函数
3.2.1 实现方式
3.2.2 调用顺序
3.3 二义性问题与虚基类
3.3.1 二义性问题
3.3.2 虚基类
3.4 Qt自定义派生类
3.4.1 使用向导创建项目
3.4.2 静态创建类对象和动态创建类对象的区别
3.4.3 对象树机制
3.4.4 自定义信号和槽
3.5 Qt中的界面
3.5.1 命名空间
3.5.2 快速实现界面设计
3.5.3 信号与槽的自动关联
3.6 Qt常用部件
3.6.1 按钮部件
3.6.2 输入部件
3.6.3 显示部件
3.7 编程实例——计算器
课后习题
实验3派生类、信号与槽和界面设计
第4章
类的静态成员与常成员
4.1 静态成员
4.1.1 静态数据成员
4.1.2 静态成员函数
4.2 Qt标准对话框
4.2.1 QDialog类的层次
4.2.2 颜色对话框及其静态成员函数
4.2.3 文件对话框及其静态成员函数
4.2.4 字体对话框及其静态成员函数
4.3 常成员
4.3.1 常数据成员
4.3.2 常成员函数
4.4 Qt中常见的数据类
4.4.1 QChar类
4.4.2 QString类
4.4.3 QByteArray类
4.5 程序国际化
4.6 编程实例——常用信息的获取与展示
课后习题
实验4静态成员和常成员的使用
第5章
多态
5.1 静态多态——模板
5.1.1 函数模板
5.1.2 类模板
5.2 Qt中的容器
5.2.1 列表
5.2.2 向量
5.2.3 链表
5.3 动态多态
5.3.1 虚函数
5.3.2 调用方式
5.3.3 实现原理
5.4 抽象类与纯虚函数
5.4.1 抽象类
5.4.2 纯虚函数的定义
5.5 编程实例——猴子选大王
课后习题
实验5多态的实现与容器的使用
第6章
Qt事件及绘图
6.1 事件处理机制
6.2 常见事件
6.2.1 鼠标事件
6.2.2 滚轮事件
6.2.3 键盘事件
6.2.4 定时器事件
6.3 Qt二维绘图
6.3.1 绘图系统
6.3.2 画笔和画刷
6.3.3 图像绘图设备
6.4 Qt抽象部件的可视化实现
6.4.1 QWidget类层次
6.4.2 抽象部件的派生类实现
6.5 使用OpenCV库进行图像处理
6.5.1 图像的读写
6.5.2 灰度化与二值化
6.5.3 图像的平滑
6.5.4 视频的读写
6.5.5 OpenCV和Qt的结合
6.6 编程实例——爱心表白小程序
课后习题
实验6事件处理与绘图
第7章
数据I/O
7.1 标准C++中的流
7.1.1 流类库
7.1.2 文件类型
7.1.3 使用流实现文件I/O
7.2 Qt的I/O设备
7.2.1 I/O设备类层次
7.2.2 访问I/O设备的过程
7.3 Qt文件操作
7.3.1 QFile类
7.3.2 QTemporaryFile类
7.3.3 QSaveFile类
7.3.4 QFileInfo类
7.4 Qt目录操作
7.4.1 QDir类
7.4.2 QTemporaryDir类
7.4.3 QFileSystemWatcher类
7.5 Qt应用程序主窗口的设计与使用
7.5.1 菜单栏
7.5.2 工具栏
7.5.3 中心部件
7.5.4 状态栏
7.5.5 可停靠窗口
7.6 编程实例——学生信息登记系统
课后习题
实验7文件读写和主窗口实现
第8章
友元、运算符重载与多文档应用
8.1 友元
8.1.1 友元函数
8.1.2 友元类
8.2 运算符重载
8.2.1 算术运算符
8.2.2 提取和插入运算符
8.2.3 运算符重载的限制
8.3 Qt多文档应用程序
8.3.1 多文档界面
8.3.2 带界面的自定义窗口类
8.3.3 自定义类型的I/O操作
8.4 编程实例——矩阵计算
课后习题
实验8友元、重载与多文档应用
第9章
综合实例
9.1 随机抽组程序
9.2 贪吃蛇游戏
9.3 图片浏览器
附录A
集成开发环境Qt Creator
附录B
计算机视觉库OpenCV
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...