《C++ Qt设计模式 第2版》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:(美)艾朱斯特著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2012
  • ISBN:9787121168901
  • 页数:492 页
图书介绍:本书讲解如何在流行的开源平台Qt 4.7下用C++进行设计模式的开发。利用大量的例题和习题,全书详细讲解了Qt下的窗件、主窗口、模型与视图、反射、线程、数据库以及多媒体的设计,并针对Qt提供的新功能进行了更新。本书无需读者具备C和C++的编程知识,通过学习,即可精通跨平台的C++编程。

第一部分 设计模式与Qt 2

第1章 C++简介 2

1.1 C++概述 2

1.2 C++简史 2

1.3第一个C++例子 3

1.4标准输入与输出 5

1.5函数介绍 7

1.6 qmake,工程文件及Makefile 11

1.7获得在线帮助 16

1.8字符串 16

1.9流 18

1.10文件流 20

1.11用于用户输入/输出的Qt对话框 23

1.12标志符,类型和常量 26

1.13 C++简单类型 27

1.14 const关键字 36

1.15 指针与内存访问 37

1.16引用变量 41

1.17 const*与*const 42

1.18复习题 44

第2章 类与对象 46

2.1 struct简介 46

2.2类定义 47

2.3成员访问限定符 49

2.4封装 51

2.5 UML介绍 51

2.6类的友元 52

2.7构造函数 53

2.8析构函数 55

2.9 static关键字 56

2.10类的声明和定义 59

2.11复制构造函数与赋值运算符 60

2.12转换 63

2.13 const成员函数 65

2.14子对象 66

2.15练习:类 67

2.16复习题 74

第3章 Qt简介 78

3.1风格指南与命名约定 79

3.2 Qt核心模块 80

3.3 Qt Creator,用于Qt编程的集成开发环境 82

3.4练习:Qt简介 83

3.5复习题 84

第4章 列表 85

4.1容器简介 85

4.2迭代器 85

4.3关系 90

4.4练习:关系 91

4.5复习题 92

第5章 函数 94

5.1函数重载 94

5.2可选实参 96

5.3运算符重载 98

5.4按值传递参数 101

5.5按引用传递参数 103

5.6 const引用 105

5.7函数返回值 106

5.8从函数返回引用 106

5.9对const重载 107

5.10 inline函数 109

5.11带变长实参表的函数 112

5.12练习:加密 113

5.13复习题 115

第6章 继承与多态 116

6.1简单派生 116

6.2具有多态性的派生 121

6.3抽象基类的派生 127

6.4继承设计 130

6.5重载,隐藏与重写 132

6.6构造函数,析构函数与复制赋值运算符 133

6.7处理命令行实参 137

6.8容器 141

6.9托管容器,组合与聚合 142

6.10指针容器 145

6.11复习题 159

第7章 库与设计模式 163

7.1建立并复用库 164

7.2练习:安装库 169

7.3框架与组件 171

7.4设计模式 172

7.5复习题 178

第8章 QObject,QApplication,信号和槽 179

8.1值和对象 181

8.2组合模式:父对象和子对象 182

8.3 QApplication和事件循环 187

8.4 Q_OBJECT和moc一览表 188

8.5信号和槽 189

8.6 QObject的生命周期 190

8.7 QTestLib 191

8.8练习:QObject,QApplication,信号和槽 194

8.9复习题 194

第9章 窗件和设计师 195

9.1窗件的分类 195

9.2设计师简介 197

9.3对话框 199

9.4窗体的布局 201

9.5图标,图像和资源 202

9.6窗件的布局 205

9.7设计师和代码的集成 210

9.8练习:输入窗体 215

9.9事件循环:重访 216

9.10绘制事件和画图 222

9.11复习题 224

第10章 主窗口和动作 225

10.1 QAction, QMenu和QMenuBar 225

10.2区域和QDockWidget 232

10.3 QSettings:保存和恢复应用程序的状态 234

10.4剪贴板和数据传输操作 236

10.5命令模式 237

10.6 tr()和国际化 243

10.7练习:主窗口和动作 244

10.8复习题 244

第11章 范型和容器 246

11.1范型与模板 246

11.2范型,算法和运算符 250

11.3有序映射示例 252

11.4函数指针和仿函数 255

11.5享元模式:隐式共享类 257

11.6练习:范型 260

11.7复习题 261

第12章 元对象,属性和反射编程 262

12.1 QMetaObject——元对象模式 262

12.2类型识别和qobject_cast 263

12.3 Q_PROPERTY宏——描述QObject的属性 265

12.4 QVariant类:属性访问 267

12.5动态属性 270

12.6元类型,声明和注册 273

12.7 invokeMethod() 275

12.8练习:反射 275

12.9复习题 276

第13章 模型和视图 277

13.1模型-视图-控制器(MVC) 277

13.2 Qt模型和视图 278

13.3表格模型 287

13.4树模型 295

13.5智能指针 298

13.6练习:模型和视图 300

13.7复习题 301

第14章 验证和正则表达式 302

14.1输入掩码 302

14.2验证器 304

14.3正则表达式 306

14.4正则表达式验证 313

14.5子类化QValidator 314

14.6练习:验证和正则表达式 316

14.7复习题 317

第15章 XML解析 318

15.1 Qt XML解析器 320

15.2 SAX解析 321

15.3 XML,树结构和DOM 325

15.4 XML流 332

15.5复习题 334

第16章 更多的设计模式 335

16.1创建模式 335

16.2备忘录模式 342

16.3 Facade模式 347

16.4复习题 352

第17章 并发 353

17.1 QProcess和进程控制 353

17.2 QThread和QtConcurrent 363

17.3练习:QThread和QtConcurrent 374

17.4复习题 375

第18章 数据库编程 376

18.1 QSqlDatabase:从Qt连接SQL 377

18.2查询和结果集 381

18.3数据库模型 382

18.4复习题 383

第二部分 C++语言规范 386

第19章 类型与表达式 386

19.1运算符 386

19.2语句与控制结构 389

19.3逻辑表达式的求值 394

19.4枚举 395

19.5有符号整型类型与无符号整型类型 396

19.6标准表达式转换 398

19.7显式转换 400

19.8用ANSI C++类型转换进行更安全的类型转换 401

19.9重载特殊的运算符 405

19.10运行时类型识别 410

19.11成员选择运算符 412

19.12练习:类型与表达式 413

19.13复习题 415

第20章 作用域与存储类 416

20.1声明与定义 416

20.2标志符的作用域 417

20.3存储类 423

20.4命名空间 426

20.5复习题 430

第21章 内存访问 431

21.1指针误用 431

21.2带有堆内存的更多指针误用 433

21.3内存访问小结 435

21.4数组简介 435

21.5指针的算术运算 436

21.6数组,函数与返回值 437

21.7不同类型的数组 439

21.8有效的指针操作 439

21.9数组与内存 441

21.10练习:内存访问 441

21.11复习题 442

第22章 继承详解 443

22.1虚指针和虚表 443

22.2多态与虚析构函数 445

22.3多重继承 448

22.4 public, protected和private派生 453

22.5复习题 454

第三部分 编程作业 456

第23章 MP3自动点唱机作业 456

23.1 Phonon/MultiMediaKit配置 457

23.2播放列表 457

23.3多种类型的播放列表 458

23.4源选择器 459

23.5各播放列表数据库 460

23.6星号评分 460

23.7排序,过滤和播放列表编辑 460

附录A C++的保留关键字 461

附录B标准头文件 462

附录C开发工具 463

附录D Alan的Debian程序员快速指南 480

附录E C++/Qt配置 485

参考文献 491