图书介绍

Visual C++2010入门经典 第5版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Visual C++2010入门经典 第5版
  • (美)IvorHorton著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302239994
  • 出版时间:2010
  • 标注页数:1011页
  • 文件大小:135MB
  • 文件页数:1030页
  • 主题词:C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Visual C++2010入门经典 第5版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 使用Visual C++ 2010编程1

1.1 .NET Framework1

1.2 CLR2

1.3 编写C++应用程序3

1.4 学习Windows编程4

1.4.1 学习C++4

1.4.2 C++标准5

1.4.3 属性5

1.4.4 控制台应用程序5

1.4.5 Windows编程概念6

1.5 集成开发环境简介7

1.5.1 编辑器8

1.5.2 编译器8

1.5.3 链接器8

1.5.4 库8

1.6 使用IDE8

1.6.1 工具栏选项9

1.6.2 可停靠的工具栏10

1.6.3 文档11

1.6.4 项目和解决方案11

1.6.5 设置Visual C++ 2010的选项23

1.6.6 创建和执行Windows应用程序23

1.6.7 创建Windows Forms应用程序26

1.7 小结27

1.8 本章主要内容28

第2章 数据、变量和计算29

2.1 C++程序结构29

2.1.1 main()函数36

2.1.2 程序语句36

2.1.3 空白38

2.1.4 语句块38

2.1.5 自动生成的控制台程序39

2.2 定义变量40

2.2.1 命名变量40

2.2.2 声明变量41

2.2.3 变量的初始值42

2.3 基本数据类型42

2.3.1 整型变量43

2.3.2 字符数据类型44

2.3.3 整型修饰符45

2.3.4 布尔类型46

2.3.5 浮点类型46

2.3.6 字面值47

2.3.7 定义数据类型的同义词48

2.3.8 具有特定值集的变量49

2.4 基本的输入/输出操作50

2.4.1 从键盘输入50

2.4.2 到命令行的输出50

2.4.3 格式化输出51

2.4.4 转义序列52

2.5 C++中的计算54

2.5.1 赋值语句54

2.5.2 算术运算55

2.5.3 计算余数59

2.5.4 修改变量60

2.5.5 增量和减量运算符60

2.5.6 计算的顺序63

2.6 类型转换和类型强制转换64

2.6.1 赋值语句中的类型转换65

2.6.2 显式类型转换65

2.6.3 老式的类型强制转换66

2.7 AUTO关键字66

2.8 查看类型67

2.9 按位运算符67

2.9.1 按位AND运算符68

2.9.2 按位OR运算符69

2.9.3 按位EOR运算符71

2.9.4 按位NOT运算符71

2.9.5 移位运算符71

2.10 lvalue和rvalue73

2.11 了解存储时间和作用域74

2.11.1 自动变量74

2.11.2 决定变量声明的位置76

2.11.3 全局变量77

2.11.4 静态变量80

2.12 名称空间80

2.12.1 声明名称空间81

2.12.2 多个名称空间82

2.13 C++/CLI编程84

2.13.1 C++/CLI特有的基本数据类型84

2.13.2 命令行上的C++/CLI输出87

2.13.3 C++/CLI特有的功能——格式化输出88

2.13.4 C++/CLI的键盘输入91

2.13.5 使用safe_cast92

2.13.6 C++/CLI枚举92

2.14 查看C++/CLI类型96

2.15 小结97

2.16 练习97

2.17 本章主要内容98

第3章 判断和循环101

3.1 比较数据值101

3.1.1 if语句102

3.1.2 嵌套的if语句104

3.1.3 嵌套的if-else语句107

3.1.4 逻辑运算符和表达式109

3.1.5 条件运算符112

3.1.6 switch语句113

3.1.7 无条件转移116

3.2 重复执行语句块117

3.2.1 循环的概念117

3.2.2 for循环的变体119

3.2.3 while循环126

3.2.4 do-while循环128

3.2.5 嵌套的循环129

3.3 C++/CLI编程132

3.4 小结137

3.5 练习138

3.6 本章主要内容138

第4章 数组、字符串和指针139

4.1 处理多个相同类型的数据值139

4.1.1 数组140

4.1.2 声明数组140

4.1.3 初始化数组143

4.1.4 字符数组和字符串处理144

4.1.5 多维数组147

4.2 间接数据访问150

4.2.1 指针的概念150

4.2.2 声明指针150

4.2.3 使用指针152

4.2.4 初始化指针152

4.2.5 sizeof操作符158

4.2.6 常量指针和指向常量的指针159

4.2.7 指针和数组161

4.3 动态内存分配168

4.3.1 堆的别名——空闲存储器168

4.3.2 new和delete操作符168

4.3.3 为数组动态分配内存169

4.3.4 多维数组的动态分配171

4.4 使用引用172

4.4.1 引用的概念172

4.4.2 声明并初始化lvalue引用172

4.4.3 声明并初始化rvalue引用173

4.5 字符串的本地C++库函数174

4.5.1 查找以空字符结尾的字符串的长度174

4.5.2 连接以空字符结尾的字符串174

4.5.3 复制以空字符结尾的字符串176

4.5.4 比较以空字符结尾的字符串177

4.5.5 搜索以空字符结尾的字符串177

4.6 C++/CLI编程179

4.6.1 跟踪句柄180

4.6.2 CLR数组181

4.6.3 字符串195

4.6.4 跟踪引用203

4.6.5 内部指针204

4.7 小结206

4.8 练习206

4.9 本章主要内容207

第5章 程序结构(1)209

5.1 理解函数209

5.1.1 需要函数的原因210

5.1.2 函数的结构210

5.1.3 使用函数213

5.2 给函数传递实参216

5.2.1 按值传递机制216

5.2.2 给函数传递指针实参217

5.2.3 给函数传递数组219

5.2.4 给函数传递引用实参222

5.2.5 使用const修饰符224

5.2.6 rvalue引用形参225

5.2.7 main()函数的实参227

5.2.8 接受数量不定的函数实参229

5.3 从函数返回值231

5.3.1 返回指针231

5.3.2 返回引用233

5.3.3 函数中的静态变量236

5.4 递归函数调用238

5.5 C++/CLI编程240

5.5.1 接受数量可变实参的函数241

5.5.2 main()的实参242

5.6 小结243

5.7 练习243

5.8 本章主要内容244

第6章 程序结构(2)245

6.1 函数指针245

6.1.1 声明函数指针246

6.1.2 函数指针作为实参249

6.1.3 函数指针的数组250

6.2 初始化函数形参250

6.3 异常252

6.3.1 抛出异常253

6.3.2 捕获异常254

6.3.3 MFC中的异常处理255

6.4 处理内存分配错误256

6.5 函数重载257

6.5.1 函数重载的概念258

6.5.2 引用类型和重载选择260

6.5.3 何时重载函数260

6.6 函数模板261

6.7 使用decltype操作符263

6.8 使用函数的示例265

6.8.1 实现计算器265

6.8.2 从字符串中删除空格268

6.8.3 计算表达式的值268

6.8.4 获得项值270

6.8.5 分析数271

6.8.6 整合程序274

6.8.7 扩展程序275

6.8.8 提取子字符串277

6.8.9 运行修改过的程序279

6.9 C++/CLI编程279

6.9.1 理解泛型函数280

6.9.2 CLR版本的计算器程序285

6.10 小结290

6.11 练习291

6.12 本章主要内容292

第7章 自定义数据类型293

7.1 C++中的结构293

7.1.1 结构的概念294

7.1.2 定义结构294

7.1.3 初始化结构294

7.1.4 访问结构的成员295

7.1.5 伴随结构的智能感知帮助298

7.1.6 RECT结构299

7.1.7 使用指针处理结构300

7.2 数据类型、对象、类和实例301

7.2.1 类的起源303

7.2.2 类的操作303

7.2.3 术语303

7.3 理解类304

7.3.1 定义类304

7.3.2 声明类的对象305

7.3.3 访问类的数据成员305

7.3.4 类的成员函数307

7.3.5 成员函数定义的位置309

7.3.6 内联函数309

7.4 类构造函数310

7.4.1 构造函数的概念311

7.4.2 默认的构造函数312

7.4.3 在类定义中指定默认的形参值314

7.4.4 在构造函数中使用初始化列表316

7.4.5 声明显式的构造函数317

7.5 类的私有成员318

7.5.1 访问私有类成员320

7.5.2 类的友元函数321

7.5.3 默认复制构造函数323

7.6 this指针325

7.7 类的const对象327

7.7.1 类的const成员函数327

7.7.2 类外部的成员函数定义328

7.8 类对象的数组329

7.9 类的静态成员331

7.9.1 类的静态数据成员331

7.9.2 类的静态函数成员334

7.10 类对象的指针和引用334

7.10.1 类对象的指针334

7.10.2 类对象的引用337

7.11 C++/CLI编程338

7.11.1 定义值类类型339

7.11.2 定义引用类类型344

7.11.3 定义引用类类型的复制构造函数346

7.11.4 类属性346

7.11.5 initonly字段358

7.11.6 静态构造函数360

7.12 小结360

7.13 练习360

7.14 本章主要内容361

第8章 深入理解类363

8.1 类析构函数363

8.1.1 析构函数的概念363

8.1.2 默认的析构函数364

8.1.3 析构函数与动态内存分配366

8.2 实现复制构造函数369

8.3 在变量之间共享内存370

8.3.1 定义联合371

8.3.2 匿名联合372

8.3.3 类和结构中的联合372

8.4 运算符重载373

8.4.1 实现重载的运算符373

8.4.2 实现对比较运算符的完全支持376

8.4.3 重载赋值运算符379

8.4.4 重载加法运算符384

8.4.5 重载递增和递减运算符387

8.4.6 重载函数调用操作符388

8.5 对象复制问题389

8.5.1 避免不必要的复制操作389

8.5.2 应用rvalue引用形参392

8.5.3 命名的对象是lvalue394

8.6 类模板399

8.6.1 定义类模板400

8.6.2 根据类模板创建对象402

8.6.3 使用有多个形参的类模板405

8.6.4 函数对象模板406

8.7 使用类407

8.7.1 类接口的概念407

8.7.2 定义问题407

8.7.3 实现CBox类408

8.8 组织程序代码425

8.9 字符串的本地C++库类427

8.9.1 创建字符串对象427

8.9.2 连接字符串429

8.9.3 访问与修改字符串432

8.9.4 比较字符串436

8.9.5 搜索字符串439

8.10 C++/CLI编程447

8.10.1 在值类中重载运算符447

8.10.2 重载递增和递减运算符452

8.10.3 在引用类中重载运算符453

8.10.4 实现引用类型的赋值运算符455

8.11 小结456

8.12 练习456

8.13 本章主要内容457

第9章 类继承和虚函数459

9.1 面向对象编程的基本思想459

9.2 类的继承460

9.2.1 基类的概念461

9.2.2 基类的派生类461

9.3 继承机制下的访问控制464

9.3.1 派生类中构造函数的操作467

9.3.2 声明类的保护成员470

9.3.3 继承类成员的访问级别473

9.4 派生类中的复制构造函数474

9.5 友元类成员477

9.5.1 友元类479

9.5.2 对类友元关系的限制479

9.6 虚函数479

9.6.1 虚函数的概念481

9.6.2 使用指向类对象的指针483

9.6.3 使用引用处理虚函数485

9.6.4 纯虚函数486

9.6.5 抽象类487

9.6.6 间接基类489

9.6.7 虚析构函数491

9.7 类类型之间的强制转换494

9.8 嵌套类495

9.9 C++/CLI编程498

9.9.1 装箱与拆箱499

9.9.2 C++/CLI类的继承499

9.9.3 接口类505

9.9.4 定义接口类505

9.9.5 类和程序集509

9.9.6 被指定为new的函数513

9.9.7 委托和事件514

9.9.8 引用类的析构函数和终结器525

9.9.9 泛型类527

9.10 小结536

9.11 练习536

9.12 本章主要内容539

第10章 标准模板库541

10.1 标准模板库的定义541

10.1.1 容器542

10.1.2 容器适配器542

10.1.3 迭代器543

10.1.4 算法544

10.1.5 STL中的函数对象545

10.1.6 函数适配器545

10.2 STL容器范围545

10.3 序列容器545

10.3.1 创建矢量容器546

10.3.2 矢量容器的容量和大小549

10.3.3 访问矢量中的元素553

10.3.4 在矢量中插入和删除元素553

10.3.5 在矢量中存储类对象555

10.3.6 排序矢量元素559

10.3.7 排序矢量中的指针560

10.3.8 双端队列容器562

10.3.9 使用列表容器565

10.3.10 使用其他序列容器574

10.4 关联容器588

10.4.1 使用映射容器589

10.4.2 使用多重映射容器600

10.5 关于迭代器的更多内容600

10.5.1 使用输入流迭代器601

10.5.2 使用插入迭代器604

10.5.3 使用输出流迭代器605

10.6 关于函数对象的更多内容607

10.7 关于算法的更多内容608

10.7.1 fill()608

10.7.2 replace()609

10.7.3 find()609

10.7.4 transform()610

10.8 lambda表达式611

10.8.1 capture子句612

10.8.2 捕获特定的变量613

10.8.3 模板和lambda表达式613

10.8.4 包装lambda表达式617

10.9 C++/CLI程序的STL618

10.9.1 STL/CLR容器619

10.9.2 使用序列容器619

10.9.3 使用关联容器627

10.10 C++/CLI中的lambda表达式633

10.11 小结633

10.12 练习633

10.13 本章主要内容634

第11章 调试技术635

11.1 理解调试635

11.1.1 程序故障636

11.1.2 常见故障637

11.2 基本的调试操作638

11.2.1 设置断点639

11.2.2 设置跟踪点641

11.2.3 启动调试模式641

11.2.4 修改变量的值645

11.3 添加调试代码645

11.3.1 使用断言645

11.3.2 添加自己的调试代码647

11.4 调试程序652

11.4.1 调用栈652

11.4.2 单步执行到出错位置653

11.5 测试扩展的类656

11.6 调试动态内存659

11.6.1 检查空闲存储器的函数660

11.6.2 控制空闲存储器的调试操作661

11.6.3 空闲存储器的调试输出662

11.7 调试C++/CLI程序668

11.7.1 使用调试类Debug和跟踪类Trace668

11.7.2 在Windows Forms应用程序中获得跟踪输出676

11.8 小结677

11.9 本章主要内容677

第12章 Windows编程的概念679

12.1 Windows编程基础679

12.1.1 窗口的元素680

12.1.2 Windows程序与操作系统681

12.1.3 事件驱动型程序682

12.1.4 Windows消息682

12.1.5 Windows API682

12.1.6 Windows数据类型683

12.1.7 Windows程序中的符号684

12.2 Windows程序的结构685

12.2.1 WinMain()函数686

12.2.2 消息处理函数696

12.2.3 简单的Windows程序700

12.3 Windows程序的组织701

12.4 MFC702

12.4.1 MFC表示法702

12.4.2 MFC程序的组织方式702

12.5 使用Windows Forms706

12.6 小结707

12.7 本章主要内容707

第13章 多核编程709

13.1 并行处理基本知识709

13.2 并行模式库710

13.3 并行处理算法710

13.3.1 使用parallel_for算法710

13.3.2 使用parallel_for_each算法712

13.3.3 使用parallel_invoke算法714

13.4 真正的并行问题715

13.5 临界区728

13.5.1 使用critical_section对象728

13.5.2 锁定代码节或解除代码节锁定729

13.6 combinable类模板731

13.7 任务和任务组733

13.8 小结736

13.9 练习736

13.10 本章主要内容736

第14章 使用MFC编写Windows程序739

14.1 MFC的文档/视图概念739

14.1.1 文档的概念739

14.1.2 文档界面740

14.1.3 视图的概念740

14.1.4 链接文档和视图741

14.1.5 应用程序和MFC742

14.2 创建MFC应用程序743

14.2.1 创建SDI应用程序745

14.2.2 MFC Application Wizard的输出748

14.2.3 创建MDI应用程序757

14.3 小结760

14.4 练习760

14.5 本章主要内容760

第15章 处理菜单和工具栏763

15.1 与Windows进行通信763

15.1.1 了解消息映射764

15.1.2 消息类别767

15.1.3 处理程序中的消息767

15.2 扩展Sketcher程序768

15.3 菜单的元素769

15.4 为菜单消息添加处理程序771

15.4.1 选择处理菜单消息的类773

15.4.2 创建菜单消息函数773

15.4.3 编写菜单消息函数的代码775

15.4.4 添加更新用户界面的消息处理程序778

15.5 添加工具栏按钮781

15.5.1 编辑工具栏按钮的属性782

15.5.2 练习使用工具栏按钮783

15.5.3 添加工具提示784

15.6 C++/CLI程序中的菜单和工具栏785

15.6.1 理解Windows Forms785

15.6.2 理解Windows Forms应用程序786

15.6.3 在CLR Sketcher中添加菜单788

15.6.4 添加菜单项的事件处理程序790

15.6.5 实现事件处理程序791

15.6.6 设置菜单项复选792

15.6.7 添加工具栏793

15.7 小结797

15.8 练习797

15.9 本章主要内容797

第16章 在窗口中绘图799

16.1 窗口绘图的基础知识799

16.1.1 窗口工作区800

16.1.2 Windows图形设备界面800

16.2 Visual C++中的绘图机制802

16.2.1 应用程序中的视图类802

16.2.2 CDC类803

16.3 实际绘制图形811

16.4 对鼠标进行编程813

16.4.1 鼠标发出的消息813

16.4.2 鼠标消息处理程序814

16.4.3 使用鼠标绘图816

16.5 练习使用Sketcher程序837

16.5.1 运行示例838

16.5.2 捕获鼠标消息838

16.6 在CLR中绘图840

16.6.1 在窗体上绘图840

16.6.2 添加鼠标事件处理程序840

16.6.3 定义C++/CLI元素类842

16.6.4 实现MouseMove事件处理程序850

16.6.5 实现MouseUp事件处理程序851

16.6.6 实现窗体的Paint事件处理程序851

16.7 小结852

16.8 练习852

16.9 本章主要内容853

第17章 创建文档和改进视图855

17.1 创建草图文档855

17.2 改进视图859

17.2.1 更新多个视图859

17.2.2 滚动视图861

17.2.3 使用MM_LOENGLISH映射模式865

17.3 删除和移动形状866

17.4 实现上下文菜单866

17.4.1 关联菜单和类867

17.4.2 练习弹出菜单870

17.4.3 突出显示元素870

17.4.4 处理菜单消息874

17.5 处理屏蔽的元素881

17.6 扩展CLR Sketcher882

17.6.1 坐标系统转换882

17.6.2 定义草图类885

17.6.3 在Paint事件处理程序中绘制草图886

17.6.4 实现元素的突出显示887

17.6.5 创建上下文菜单891

17.7 小结897

17.8 练习897

17.9 本章主要内容898

第18章 使用对话框和控件899

18.1 理解对话框899

18.2 理解控件900

18.3 创建对话框资源900

18.3.1 给对话框添加控件901

18.3.2 测试对话框902

18.4 对话框的编程902

18.4.1 添加对话框类902

18.4.2 模态和非模态对话框903

18.4.3 显示对话框903

18.5 支持对话框控件906

18.5.1 初始化控件906

18.5.2 处理单选按钮消息907

18.6 完成对话框的操作908

18.6.1 给文档添加线宽908

18.6.2 给元素添加线宽909

18.6.3 在视图中创建元素910

18.6.4 练习使用对话框910

18.7 使用微调按钮控件911

18.7.1 添加Scale菜单项和工具栏按钮911

18.7.2 创建微调按钮911

18.7.3 生成比例对话框类913

18.7.4 显示微调按钮915

18.8 使用缩放比例916

18.8.1 可缩放的映射模式916

18.8.2 设置文档的大小917

18.8.3 设置映射模式918

18.8.4 同时实现滚动与缩放919

18.9 使用CTaskDialog类921

18.9.1 显示任务对话框921

18.9.2 创建CTaskDialog对象923

18.10 使用状态栏925

18.11 使用列表框929

18.11.1 删除比例对话框929

18.11.2 创建列表框控件929

18.12 使用编辑框控件931

18.12.1 创建编辑框资源931

18.12.2 创建对话框类933

18.12.3 添加Text菜单项934

18.12.4 定义文本元素935

18.12.5 实现CText类935

18.13 CLR Sketcher中的对话框和控件940

18.13.1 添加对话框940

18.13.2 创建文本元素946

18.14 小结953

18.15 练习953

18.16 本章主要内容953

第19章 存储和打印文档955

19.1 了解序列化955

19.2 序列化文档956

19.2.1 文档类定义中的序列化956

19.2.2 文档类实现中的序列化957

19.2.3 基于CObject的类的功能959

19.2.4 序列化的工作方式960

19.2.5 如何实现类的序列化961

19.3 应用序列化961

19.3.1 记录文档修改962

19.3.2 序列化文档963

19.3.3 序列化元素类965

19.4 练习序列化968

19.5 打印文档969

19.6 实现多页打印972

19.6.1 获取文档的总尺寸973

19.6.2 存储打印数据973

19.6.3 准备打印974

19.6.4 打印后的清除976

19.6.5 准备设备上下文976

19.6.6 打印文档977

19.6.7 获得文档的打印输出980

19.7 CLR Sketcher中的序列化和打印981

19.7.1 了解二进制序列化981

19.7.2 序列化草图985

19.7.3 打印草图995

19.8 小结996

19.9 练习996

19.10 本章主要内容997

第20章 编写自己的DLL999

20.1 了解DLL999

20.1.1 DLL的工作方式1000

20.1.2 DLL的内容1003

20.1.3 DLL变体1003

20.2 决定放入DLL的内容1004

20.3 编写DLL1005

20.4 小结1011

20.5 练习1011

20.6 本章主要内容1011

热门推荐