当前位置:在线查询网 > 在线百科全书查询 > VisualC++2008完全学习手册

VisualC++2008完全学习手册_在线百科全书查询


请输入要查询的词条内容:

VisualC++2008完全学习手册




Visual C++2008完全学习手册

作者:张水波

图书详细信息:ISBN:9787302236849

定价:79.5元

印次:1-1

装帧:平装

印刷日期:2010-11-8

图书简介


本书介绍Visual C++ 2008支持的两种版本的C++,详细介绍两种风格的C++语言,使用微软基本类MFC开发本地的ISO/ANSI C++ Windows应用程序,使用Windows Forms开发C++/CLI Windows应用程序。本书共分4篇,分别介绍Visual C++ 2008基础知识、C++面向对象的程序开发、Windows应用程序开发和数据库访问等内容。配套光盘提供了教学视频和实例源文件。

本书可以作为Visual C++ 2008的基础学习书籍,也可以帮助中级读者提高技能,顺利掌握编程应用实践知识。

前言


微软开发的Visual Studio 2008支持两种截然不同但又紧密相关的C++语言:ISO/ANSI标准C++和C++/CLI。ISO/ANSI是标准C++,它是在20世纪80年代早期开发的,是一种基于C的面向对象语言,所以这两种语言有许多共同的语法和功能,但是C++要比其前身丰富得多,用途也广泛得多。标准C++主要用于开发本地计算机上运行的高性能应用程序。C++/CLI由微软公司开发,现在是ECMA标准,它是专门为.NET Framework开发的。

本书使用Visual C++ 2008支持的两种技术,讲授C++编程的基础知识。详细介绍了两种C++语言,使用微软基本类MFC开发本地的ISO/ANSI C++Windows应用程序,使用Windows Forms开发的C++/CLI Windows应用程序等。

由于当前信息化时代中大量地使用数据库,本书还介绍了用于MFC和Windows Forms应用程序中访问数据源的技术。与Windows Forms应用程序相比,MFC应用程序需要编写大量的代码来实现希望的功能,而Windows Forms程序经常只需要编写很少的代码,有时甚至不用编写代码。因此,本书重点介绍了MFC编程,而非Windows Forms编程。

1.本书内容

本书介绍Visual C++ 2008支持的两种不同版本的C++,详细介绍了两种风格的C++语言,使用Microsoft基本类MFC开发本地的ISO/ANSI C++ Windows应用程序,使用Windows Forms开发C++/CLI Windows应用程序等。本书共分为4篇,分别是Visual C++ 2008基础知识、C++面向对象的程序开发、Windows应用程序开发、数据库访问。各篇主要内容如下。

第1篇:Visual C++ 2008基础知识(第1~7章)。首先介绍使用C++编写本地应用程序和.NET Framework应用程序所需要理解的基本概念,以及在Visual C++ 2008开发环境中体现的主要思想。第2~7章专门讲授两个C++语言版本。

第2篇:C++面向对象的程序开发(第8~12章)。本篇介绍了什么是面向对象的程序开发,以及面向对象的程序设计的主要特性。最后介绍如何使用标准模板库STL。

第3篇:Windows应用程序开发(第13~20章)。本篇是本书的重点之一,首先介绍创建Windows应用程序的几种方式,然后重点介绍如何使用MFC开发本地的Windows应用程序,并使用C++/CLI创建了Windows应用程序。

第4篇:数据库访问(第21~22章)。本篇首先使用MFC创建访问数据库的Windows应用程序,然后使用Windows Forms进行高度的可视化数据库编程。

2.本书特色

本书中采用大量的实例进行讲解,力求通过实际操作使读者更容易地掌握Visual C++ 2008的知识。本书难度适中,内容由浅入深,实用性强,覆盖面广,条理清晰。

? 知识点全 本书紧紧围绕Visual C++ 2008的实际应用、管理与开发展开讲解,具有很强的逻辑性和系统性。

? 基于理论,注重实践 在讲述过程中,不仅仅只介绍理论知识,而且在合适位置安排具有代表性、操作性强的综合应用,将理论应用到实践当中,来加强读者的实际应用能力,巩固Visual C++的理论知识。

? 快速掌握 注重技术原理和实际应用的高度融合,通过循序渐进的内容组织,以及大量来自工作现场的应用案例,帮助读者快速掌握和应用Visual C++ 2008编程技术。

? 随书光盘 本书为实例配备了视频教学文件,读者可以通过视频文件更加直观地学习Visual C++ 2008的使用知识。

? 网站技术支持 读者在学习或者工作的过程中,如果遇到实际问题,可以直接登录www-itzcn-com与我们联系,作者会在第一时间内给予帮助。

3.读者对象

本书具有知识全面、实例精彩、指导性强的特点,力求以全面的知识及丰富的实例来指导读者透彻地学习Visual C++ 2008各方面的知识。本书可以作为Visual C++ 2008的入门书籍,也可以帮助中级读者提高技能,对高级读者也有一定的启发意义。

本书适合以下人员阅读学习。

? 希望学习C++语言的初学者。

? 了解C++并希望使用C++开发Windows应用程序者。

? 各大中专院校的在校学生和相关授课老师。

目录


第一篇 Visual C++ 2008基础知识

第1章 开始使用Visual C++ 2008 1

1.1 .NET Framework 3.5 1

1.1.1 什么是.NET Framework 1

1.1.2 公共语言运行库CLR 2

1.1.3 .NET Framework类库 2

1.1.4 .NET Framework 3.5的新功能 3

1.2 C++应用程序 3

1.3 Visual C++ 2008与Visual Studio 2008 4

1.4 控制台应用程序 7

1.4.1 Win32控制台应用程序 7

1.4.2 创建CLR控制台程序 10

1.5 创建Windows应用程序 11

1.5.1 创建MFC应用程序 12

1.5.2 创建Windows Forms应用程序 13

第2章 变量和表达式 15

2.1 C++的基本语法 15

2.1.1 程序的结构 15

2.1.2 注释 18

2.1.3 #include指令 19

2.1.4 命名空间 19

2.1.5 程序块 20

2.2 变量和常量 21

2.2.1 定义变量 21

2.2.2 常量和符号常量 22

2.3 基本数据类型 23

2.3.1 整型 23

2.3.2 字符类型 24

2.3.3 布尔类型 25

2.3.4 浮点类型 25

2.3.5 定义数据类型的别名 26

2.4 输入与输出表达式 26

2.4.1 标准I/O流 27

2.4.2 格式化输出 27

2.5 运算符与表达式 31

2.5.1 算术运算 31

2.5.2 赋值运算 36

2.5.3 逗号运算 37

2.5.4 关系运算 38

2.5.5 逻辑运算 39

2.5.6 位运算 41

2.6 C++/CLI的应用(托管C++) 43

2.6.1 C++/CLI的基本数据类型 43

2.6.2 C++/CLI格式化输出 45

2.6.3 C++/CLI的键盘输入 47

2.6.4 safe_cast安全类型转换 47

第3章 流程控制结构 48

3.1 条件语句 48

3.1.1 if语句 48

3.1.2 条件运算符 53

3.1.3 switch语句 54

3.2 循环语句 56

3.2.1 while语句 57

3.2.2 do-while语句 59

3.2.3 for语句 60

3.2.4 嵌套循环 62

3.3 跳转结构 63

3.3.1 break语句 63

3.3.2 continue语句 65

3.3.3 goto语句 67

3.4 C++/CLI的应用 68

第4章 数组和字符串 71

4.1 数组概述 71

4.1.1 定义数组 71

4.1.2 引用数组元素 72

4.1.3 初始化 73

4.2 多维数据 74

4.2.1 多维数组的定义 75

4.2.2 多维数组的初始化 76

4.3 数组的应用 78

4.3.1 排序 78

4.3.2 倒置矩阵 84

4.4 字符数组和字符串 85

4.4.1 字符数组 85

4.4.2 string字符串 86

4.4.3 使用string字符串 87

4.4.4 Unicode字符串 92

4.5 C++/CLI的应用 92

4.5.1 CLR数组 92

4.5.2 CLR字符串 95

第5章 函数 97

5.1 函数的定义 97

5.2 函数的参数和返回值 98

5.2.1 实参与形参 98

5.2.2 函数的返回值 101

5.2.3 使用const修饰符的函数形参 102

5.3 函数的调用 102

5.3.1 函数调用机制 103

5.3.2 函数原型 104

5.4 函数的递归调用 105

5.5 函数的默认参数值 108

5.6 函数和数组 109

5.7 函数与变量的作用域 111

5.7.1 局部变量 111

5.7.2 全局变量 113

5.8 变量的生存期 114

5.8.1 自动变量 115

5.8.2 静态变量 116

5.9 函数的重载 117

5.10 函数模板 119

5.11 C++/CLI的应用 122

5.11.1 接收数量可变的实参 122

5.11.2 泛型函数 123

第6章 指针与引用 126

6.1 指针的概念 126

6.2 声明指针变量 126

6.3 指针运算符 127

6.3.1 取地址运算符 127

6.3.2 间接运算符 128

6.4 指针变量的初始化 129

6.5 指针和数组 130

6.5.1 使用指针法引用数组元素 130

6.5.2 使用指针处理多维数组 133

6.6 指针和函数 135

6.6.1 作为形参的指针 135

6.6.2 返回指针的函数 137

6.6.3 函数指针 139

6.7 常量指针和指针常量 140

6.7.1 指向常量的指针 140

6.7.2 指针常量 142

6.8 指向char类型的指针变量 143

6.9 动态内存的分配 145

6.9.1 堆与new和delete运算符 145

6.9.2 数组的动态分配内存 146

6.10 引用 149

6.11 C++/CLI中的指针与引用 151

6.11.1 跟踪句柄 151

6.11.2 跟踪引用 153

第7章 程序文件和预处理指令 154

7.1 使用头文件 154

7.2 外部名称 156

7.3 命名空间 157

7.3.1 声明命名空间 157

7.3.2 未指定名称的命名空间 159

7.3.3 嵌套的命名空间 160

7.4 预处理指令 160

7.4.1 文件包含 160

7.4.2 宏定义 161

7.4.3 条件编译 162

7.4.4 #error和#pragma指令 164

第二篇 C++面向对象的程序开发

第8章 自定义数据类型 167

8.1 结构 167

8.1.1 定义结构 167

8.1.2 访问结构成员 168

8.1.3 结构与指针 169

8.2 联合 171

8.2.1 定义联合 172

8.2.2 匿名联合 173

8.3 枚举 174

8.4 类的概念与定义 175

8.4.1 定义类 176

8.4.2 创建类的对象 176

8.4.3 访问类的数据成员 177

8.4.4 为类添加成员函数 178

8.5 类的构造函数 180

8.5.1 构造函数的使用 180

8.5.2 类的默认构造函数 182

8.5.3 默认的初始化值 184

8.5.4 构造函数中的初始化列表 186

8.6 类的析构函数 186

8.7 类的私有成员 189

8.8 C++/CLI中的枚举 191

8.9 C++/CLI中的类和对象 193

8.9.1 数值类类型 193

8.9.2 引用类类型 195

8.9.3 类属性 197

第9章 类的更多功能 203

9.1 对象数组 203

9.2 对象的指针与引用 205

9.2.1 对象的指针 205

9.2.2 对象的引用 207

9.3 this指针 207

9.4 类的静态成员 209

9.4.1 静态数据成员 209

9.4.2 静态成员函数 211

9.5 复制构造函数 212

9.6 类的友元 215

9.6.1 类的友元函数 216

9.6.2 友元类 219

9.7 重载运算符重载 220

9.7.1 重载运算符的概述 220

9.7.2 重载双目运算符 221

9.7.3 重载增量运算符 223

9.8 类模板 224

9.8.1 定义类模板 225

9.8.2 根据类模板创建对象 227

9.9 C++/CLI的应用 231

9.9.1 在数值类中重载运算符 231

9.9.2 重载数值类的递增和递减运

算符 233

9.9.3 重载引用类运算符 234

第10章 继承与多态性 236

10.1 继承的基本概念 236

10.1.1 类的层次关系 236

10.1.2 派生类对象的结构 238

10.2 继承机制下的访问控制 238

10.2.1 访问父类成员 239

10.2.2 继承方式 243

10.3 派生类的构造函数 246

10.4 派生类的析构函数 248

10.5 派生类的复制构造函数 249

10.6 多重继承 252

10.7 在相关的类类型之间转换 254

10.8 理解多态性 256

10.8.1 虚函数 257

10.8.2 使用虚函数的原则 260

10.9 纯虚函数和抽象类 263

10.9.1 纯虚函数 263

10.9.2 抽象类 263

10.10 C++/CLI的应用 265

10.10.1 装箱与拆箱 265

10.10.2 C++/CLI中的继承 266

10.10.3 接口类 268

10.10.4 委托和事件 270

第11章 标准模板库 277

11.1 标准模板库概述 277

11.1.1 STL容器 277

11.1.2 STL迭代器 280

11.1.3 STL算法 281

11.1.4 STL头文件 281

11.2 顺序容器 282

11.2.1 vector顺序容器 282

11.2.2 deque顺序容器 289

11.2.3 使用list容器 290

11.3 容器适配器 292

11.3.1 队列容器 292

11.3.2 优先级容器 294

11.3.3 堆栈容器 296

11.4 关联容器 298

11.4.1 使用映射容器 298

11.4.2 使用多重映射容器 301

11.5 迭代器 303

11.5.1 输入流迭代器 303

11.5.2 输出流迭代器 304

11.5.3 插入迭代器 305

11.6 算法 307

11.6.1 fill、fill_n、generate与

generate_n 307

11.6.2 数学算法 308

11.7 C++/CLI中的STL 309

11.7.1 STL/CLR顺序容器 309

11.7.2 STL/CLR关联容器 311

第12章 异常处理 314

12.1 异常的概念 314

12.2 捕获异常 315

12.2.1 try-catch块 316

12.2.2 捕获所有的异常 318

12.3 抛出异常的函数 319

12.4 标准异常类 320

12.5 MFC异常 321

第三篇 Windows应用程序开发

第13章 创建Windows应用程序 323

13.1 认识Windows应用程序 323

13.1.1 窗口 323

13.1.2 Windows程序的工作过程 324

13.1.3 Windows API 325

13.2 Windows程序结构 325

13.2.1 Windows数据类型 325

13.2.2 入口函数 327

13.2.3 窗口过程函数 335

13.2.4 一个简单Windows程序 337

13.3 使用MFC 339

13.4 使用Windows Forms 342

第14章 使用MFC创建Windows程序 344

14.1 MFC概述 344

14.1.1 MFC和Win32 344

14.1.2 MFC类库 345

14.1.3 MFC应用程序的运行 346

14.1.4 MFC中的全局函数 347

14.2 创建MFC应用程序 347

14.2.1 创建SimpleEditor应用程序 347

14.2.2 管理项目 351

14.3 代码分析 352

14.3.1 应用程序类CSimpleEditorApp 352

14.3.2 主框架窗口类CMainFrame 355

14.3.3 文档类CSimpleEditor 356

14.3.4 视图类CSimpleEditorView 357

14.3.5 预编译头文件stdafx.h 359

第15章 消息和命令 360

15.1 与Windows进行通信 360

15.1.1 了解消息映射 360

15.1.2 处理不同类型的消息 362

15.2 获取鼠标输入 363

15.2.1 客户区鼠标消息 363

15.2.2 非客户区鼠标消息 368

15.2.3 WM_NCHITTEST消息 370

15.2.4 鼠标滚轮消息 370

15.2.5 捕获鼠标 372

15.3 获取键盘输入 373

15.3.1 输入焦点 373

15.3.2 按键消息 373

15.3.3 字符消息 375

15.3.4 插入符 376

15.4 定时器消息 380

15.4.1 WM_TIMER消息 380

15.4.2 回调函数设置定时器 382

15.5 自定义消息 383

第16章 菜单 386

16.1 菜单 386

16.1.1 利用资源编辑器编辑菜单 386

16.1.2 菜单消息 389

16.1.3 添加消息处理代码 390

16.1.4 菜单命令范围 393

16.1.5 更新菜单项 394

16.1.6 菜单更新范围 396

16.2 快捷键 397

16.3 动态更改菜单 398

16.3.1 手工编辑创建菜单 398

16.3.2 修改现有菜单 399

16.3.3 系统菜单 401

16.4 快捷菜单 401

16.5 在C++/CLI程序中使用菜单 403

16.5.1 理解Windows Forms应用程序 403

16.5.2 MDI窗口 406

16.5.3 活动子窗体 408

16.5.4 排列子窗体 411

16.5.5 合并菜单 412

16.5.6 替换和删除菜单 415

16.5.7 快捷菜单 417

第17章 在窗口中绘图 419

17.1 Windows GDI 419

17.1.1 MFC设备描述表类 419

17.1.2 设备描述表的属性 420

17.1.3 绘图模式 421

17.1.4 映射模式 422

17.1.5 移动坐标原点 423

17.1.6 获取设备信息 424

17.2 用GDI绘图 425

17.2.1 应用程序中的视图类 425

17.2.2 绘制直线和曲线 426

17.2.3 绘制椭圆和矩形 429

17.2.4 画笔 429

17.2.5 画刷 431

17.2.6 绘制文本 432

17.2.7 字体 434

17.2.8 预定义对象 438

17.3 使用鼠标绘图 439

17.3.1 绘制图形分析 439

17.3.2 创建绘图类 440

17.3.3 完成基类CShape 442

17.3.4 绘制直线 443

17.3.5 完成其他派生类 444

17.3.6 创建绘图类对象 447

17.3.7 捕获鼠标消息 452

17.3.8 保存绘图对象 453

17.4 使用GDI+绘图 454

17.4.1 了解GDI+ 454

17.4.2 图形操作 455

17.4.3 坐标和区域 458

17.4.4 使用Font类绘制文本 459

17.4.5 图像操作 462

第18章 对话框和控件 464

18.1 理解对话框和控件 464

18.2 传统控件 465

18.2.1 CButton类 465

18.2.2 CListBox类 469

18.2.3 CStatic类 471

18.2.4 CEdit类 472

18.2.5 CComboBox类 475

18.2.6 CScrollBar类 477

18.3 高级控件编辑 478

18.3.1 添加键盘接口 478

18.3.2 修改控件行为 479

18.4 对话框 480

18.4.1 对话框模板 480

18.4.2 CDialog类 483

18.4.3 创建模式对话框 484

18.4.4 创建无模式对话框 486

18.4.5 对话框数据交换与校验 487

18.4.6 与对话框控件的交互 490

18.5 AddressBook程序 491

18.6 基于对话框的程序 495

18.6.1 计算器程序分析 496

18.6.2 设计MyCalculator类 497

18.6.3 设计对话框类CCalculatorDlg 498

18.7 通用对话框 502

18.7.1 文件对话框类 502

18.7.2 字体对话框类 503

18.7.3 颜色对话框类 504

18.7.4 打印对话框类 504

18.8 Windows Forms窗体 505

18.9 Windows Forms控件 506

18.9.1 控件类 506

18.9.2 Button控件 508

18.9.3 RadioButton和CheckBox控件 509

18.9.4 GroupBox控件 510

18.9.5 Label和LinkLabel控件 510

18.9.6 TextBox控件 511

18.9.7 RichTextBox控件 515

18.9.8 ListBox和CheckedListBox

控件 517

第19章 文件和串行化 519

19.1 操作文件的几种方式 519

19.1.1 使用CRT函数std::fxxx() 519

19.1.2 使用标准C++库std::fstream 521

19.1.3 使用Windows API函数 523

19.2 CFile类 525

19.2.1 打开、关闭和创建文件 525

19.2.2 文件的读和写 528

19.2.3 CFile类的派生类 529

19.3 串行化 530

19.3.1 串行化基础 530

19.3.2 创建可串行化类 532

19.3.3 为AddressBook程序添加串行化

功能 532

19.4 访问XML文件 535

19.4.1 XML文档 535

19.4.2 解析XML文档 540

19.4.3 选择节点 546

19.5 CLR中的文件操作 552

19.6 路径、目录和文件 553

19.6.1 Directory和File类 553

19.6.2 DirectoryInfo和FileInfo类 555

19.7 流和存取文件 557

19.7.1 FileStream对象 557

19.7.2 StreamReader类 560

19.7.3 StreamWriter类 561

19.8 访问二进制文件 562

第20章 动态链接库与钩子 564

20.1 了解DLL 564

20.2 静态链接库 566

20.3 常规DLL 568

20.3.1 一个简单的常规DLL 569

20.3.2 声明导出函数 571

20.3.3 DLL的调用方式 573

20.3.4 调用约定与名称改编 574

20.3.5 导出变量 575

20.3.6 导出类 576

20.3.7 DLL的入口函数 579

20.4 MFC规则DLL 580

20.4.1 静态链接MFC DLL的规则

DLL 580

20.4.2 共享MFC DLL的规则DLL 582

20.5 MFC扩展DLL 583

20.6 Windows钩子 586

20.6.1 认识HOOK钩子 586

20.6.2 钩子的安装与卸载 587

20.6.3 键盘钩子 588

第四篇 数据库访问

第21章 使用ODBC数据源 593

21.1 数据库访问技术 593

21.1.1 ODBC API 593

21.1.2 ODBC的MFC类 594

21.1.3 DAO与RDO 594

21.1.4 OLE DB与ADO 595

21.2 MFC ODBC类 596

21.2.1 CDatabase类 596

21.2.2 CRecordSet类 597

21.3 注册数据源和示例数据库 597

21.4 创建数据库应用程序 599

21.4.1 了解记录集 600

21.4.2 了解记录视图 603

21.4.3 创建视图对话框 605

21.4.4 对记录排序 606

21.5 多表操作 607

21.5.1 添加记录集 607

21.5.2 添加记录视图类 608

21.5.3 过滤数据 609

21.5.4 显示多个记录视图 610

21.6 更新操作 613

21.6.1 更新CRecordSet记录集 614

21.6.2 事务 615

21.7 向表添加数据 616

21.7.1 添加订单的逻辑处理 616

21.7.2 创建记录集视图 617

21.7.3 对话框切换 620

21.7.4 创建订单编号 621

21.7.5 订单数据 623

21.7.6 为订单选择产品 624

21.7.7 添加新订单 625

第22章 数据库和ADO-NET 628

22.1 ADO-NET概述 628

22.1.1 ADO-NET的设计目标 628

22.1.2 ADO-NET体系结构 629

22.1.3 System::Data命名空间 630

22.2 使用DataReader 632

22.3 使用DataSet 636

22.3.1 读取数据 636

22.3.2 修改数据 639

22.3.3 保存DataSet对数据的修改 643

22.4 在DataSet中访问多个表 645

22.4.1 ADO-NET中的关系 645

22.4.2 导航关系 645

22.5 使用数据控件 648

22.5.1 DataGridView控件 649

22.5.2 数据绑定 654

相关分词: VisualC 2008 完全 学习 手册