高等学校应用型特色规划教材·C++面向对象程序设计:基于Visual C++ 2010
定 价:39.8 元
- 作者:吴克力 著
- 出版时间:2013/4/1
- ISBN:9787302317913
- 出 版 社:清华大学出版社
- 中图法分类:TP312C++
- 页码:392
- 纸张:胶版纸
- 版次:1
- 开本:16开
-
商品库位:
《高等学校应用型特色规划教材·C++面向对象程序设计:基于Visual C++ 2010(附电子教案)》以面向对象技术为核心,重点介绍了标准C++的语法规则和编程技术。为便于深入理解C++的基本概念和实现技术,书中利用程序调试工具深入浅出地剖析了重要的语法现象和程序运行机理,使初学者能知其然,更知其所以然。书中用两章的篇幅分别介绍了C++/CLI应用程序和WinForm窗体应用程序的设计方法,以便拓展学习者用C++开发应用项目的能力。全书通过丰富的例程、案例和练习培养并锻炼读者的编程能力,使读者能尽快掌握面向对象编程思想和提高编程的技能。
《高等学校应用型特色规划教材·C++面向对象程序设计:基于Visual C++ 2010(附电子教案)》既注意对基本概念、基础知识的讲解和剖析,更注重实际编程能力的培养,适合作为普通高等院校应用型本科各相关专业的C++程序设计课程的教材,也适合作为编程开发人员的培训或自学用书。
《高等学校应用型特色规划教材·C++面向对象程序设计:基于Visual C++ 2010》附电子教案。
C++程序设计语言从20世纪80年代推出,至今已有近30年的历史,是一种灵活、高效、应用面广、面向对象的计算机编程语言。时至今日,C++依然在系统软件、游戏、网络和嵌入式等领域中广泛应用,是主流的程序设计语言之一。
目前,高等学校的计算机及相关专业普遍选C++作为计算机编程的入门语言进行教学,此外,许多理工类专业也开设了该课程。C++是在结构化的C语言之上引入面向对象技术演变而来的。对于初学者,学习C++语言是否需要先学习C语言呢?事实上,许多C++程序设计教程也是先讲结构化的C语言部分,后讲面向对象的C++技术。在多年的教学实践中,作者发现对于初学者来说,结构化程序设计方法的学习会对面向对象设计技术的掌握产生负面影响。例如,在学习类的概念时,受结构化程序中函数调用需要传递实参的影响,许多学生不习惯直接访问类中已封装的数据,常常试图将类中的数据传递给成员函数。结构化程序设计思想和方法学习得越好,影响就越大。实践证明,在有限的教学时间内,直接学习面向对象的C++编程技术更有利于概念的掌握和技能的提升。面向对象是当今主流的编程技术,例如流行的Java和C#均是面向对象的程序设计语言。学好C++的面向对象编程技术,无疑能为学习Java、C#打下扎实的基础。
本书在编写过程中,先后参阅了多部国内外C++程序设计类书籍,从中吸收了许多新的思想、方法和知识,并结合作者多年的教学实践和软件开发经验,博采百家之长,力求有所创新,并形成特色。本书具有以下特点。
(1)以面向对象技术为核心,循序渐进,强化编程技能的培养。本书在介绍数据类型、基本运算、程序的控制结构和函数等知识之后,即引入类的概念,并在其后的例程中强化用类设计程序,将封装的思想方法及早地传授给学习者。考虑到学习有一个由浅入深、逐步提高的过程,本书将较难的知识点尽可能早引入,并通过后继章节的反复应用,不断强化,达到能够灵活运用的目标。为避免因案例过于简单而不能很好地体现面向对象编程思想和技术的优势,书中给出了多个相对复杂的综合示例,以此演示C++面向对象程序设计的方法。
(2)利用调试跟踪工具剖析关键知识点,化抽象为直观,强化基本概念的掌握。C++中的许多概念和技术比较抽象、难懂,学习难度大。用调试工具分析和讲授C++中的概念,是一种值得推荐的直观教学法。在教学中,借助这种教学方法能演示程序执行的机理,搞清语法规则的“之所以然”,具有事半功倍的效果。本书许多例程的后面撰写了“跟踪与观察”,其中包含程序在调试运行时跟踪窗口的截图,旨在通过直观的解析帮助读者理解并掌握一些重要的概念和语法规则。此外,尽快地学会调试工具的使用,还有助于初学者提高编程能力和掌握排除错误的能力。
(3)设计基于C++/CLI的窗体应用程序,与时俱进,强化实际应用的能力。目前多数教材编写程序时仍基于曾经十分流行的Visual C++ 6.0开发平台,而微软公司的C++开发平台经过几次升级,已推出最新的Visual C++ 2010,早期的Visual C++ 6.0平台在实际应用开发中正逐渐淡出。在Visual C++ 6.0中开发Windows窗体应用程序时使用MFC类库,虽然在Visual C++ 2010版本中依然支持用MFC开发窗体应用程序,但随着技术的进步,用多种语言设计运行于.NET框架上的窗体应用程序已成为主流。为适应技术发展潮流,本书在重点介绍C++/CLI语言之后,通过若干个小应用程序示例学习窗体应用程序的设计方法。C++/CLI语言中的许多新的概念是基于.NET框架的,与C#语言十分相似,体现了面向对象技术的发展。Visual C++ 2010类似于Delphi、VB的快速应用程序设计(RAD)方法,能简化应用程序界面的设计,降低开发难度,提升初学者的学习兴趣。
(4)内容全面,语言简练,示例丰富。书中内容涵盖了用C++面向对象技术进行程序设计所需的基础知识和技能。在语言表述上,尽可能地简洁、准确、有条理,以便于阅读和理解。全书共有130多个示例程序,这些程序编写规范,可模仿性好。
本书共分13章,包括标准C++和C++/CLI两大部分。第1~10章为标准C++语言,主要内容有数据类型、基本运算、程序的控制结构、函数、类与对象、继承、多态、动态内存、模板、异常处理和流等基本概念及编程技术。第11~12章介绍C++/CLI和WinForm窗体应用程序的设计技术。第13章为项目实践。
在教学过程中,根据具体的教学课时数,下列章节可以不讲或者安排自学:5.6节“函数指针”、8.4节“标准模板库简介”、10.6节“字符串流”、第11章“C++/CLI程序设计基础”和第12章“WinForm应用程序设计”。
由于作者水平有限,书中不足之处在所难免,敬请读者不吝批评指正。
编 者
第1章 C++语言概述
1.1 CH程序设计语言简介
11.1 C++语言的发展历程
1.1.2 面向对象程序设计技术
1.1.3 学习C++程序设计的注意事项
1.2 Visual C++2010编程工具简介
1.2.1 C++程序生成过程
1.2.2.NET框架与Visual C++2010
1.2.3 Visual C++2010集成开发环境简介
1.2.4 简单的控制台应用程序
1.2.5 简单的窗体应用程序
1.2.6 调试程序
本章小结
习题1
第2章 数据类型与基本运算
2.1 C++语言的词法及规则
2.1.1 字符集
2.1.2 关键字
2.1.3 标识符与分隔符
2.1.4 运算符
2.2 数据类型
2.2.1 基本数据类型
2.2.2 构造数据类型
2.3 变量和常量
2.3.1 变量
2.3.2 常量
2.4 运算与表达式
2.4.1 运算类型和表达式
2.4.2 算术运算及算术表达式
2.4.3 赋值运算及赋值表达式
2.4.4 关系运算及关系表达式
2.4.5 逻辑运算及逻辑表达式
2.4.6 位运算及位表达式
2.4.7 其他运算及其表达式
2.5 数组
2.5.1 一维数组
2.5.2 多维数组
2.5.3 字符数组
2.6 指针类型与引用类型
2.6.1 指针类型与指针变量
2.6.2 指针运算
2.6.3 引用类型
2.7 枚举类型
2.8 控制台输入和输出
2.8.1 控制台输入
2.8.2 控制台输出
2.9 案例实训
本章小结
习题2
第3章 基本控制结构和函数
3.1 算法和基本控制结构
3.1.1 算法和流程图
3.1.2 三种基本控制结构
3.1.3 语句
3.2 选择型控制结构
3.2.1 if..else选择结构
3.2.2 switch多分支选择结构
3.3 循环型控制结构
3.3.1 for循环结构
3.3.2 while循环结构
3.3.3 do...while循环结构
3.3.4 跳转语句
3.4 文本文件的输入和输出
3.4.1 向文本文件输出数据
3.4.2 从文本文件输入数据
3.5 函数基础
3.5.1 函数定义和函数调用
3.5.2 函数的参数传递
3.5.3 函数的返回值
3.5.4 函数重载
3.5.5 内联函数
3.6 内存模型、作用域和生存期
3.6.1 C++程序内存模型
3.6.2 全局变量和局部变量
3.6.3 作用域和可见性
3.6.4 存储类型和生存期
3.7 案例实训
本章小结
习题3
第4章 类与对象
4.1 面向对象编程:封装
4.2 类与对象的定义和使用
4.2.1 类的定义
4.2.2 对象的创建
4.2.3 this指针与内存中的对象
4.3 构造函数和析构函数
4.3.1 构造函数的定义与使用
4.3.2 析构函数的定义与使用
4.4 类的复用技术——组合
4.4.1 成员对象的构造和析构
4.4.2 组合应用示例
4.5 类中的静态成员
4.5.1 静态数据成员
4.5.2 静态成员函数
4.6 类的友元
4.6.1 友元函数
4.6.2 友元类
4.7 运算符重载
4.7.1 成员函数实现运算符重载
4.7.2 友元函数实现运算符重载
4.7.3 特殊运算符的重载
4.7.4 流插入和提取运算符的重载
4.8 多文件结构与编译预处理
4.8.1 多文件结构
4.8.2 编译预处理
4.9 案例实训
本章小结
习题4
第5章 数组、指针及动态内存
5.1 数组与指针
5.1.1 指向数组的指针
5.1.2 指针数组
5.1.3 数组作为函数参数
5.2 二级指针
5.3 动态内存的分配与释放
5.3.1 new和delete运算符
5.3.2 深复制与浅复制
5.4 动态内存应用示例
5.4.1 Array类的设计
5.4.2 String类的设计
5.5 递归函数
5.6 函数指针
5.7 案例实训
本章小结
习题5
第6章 类的继承
6.1 面向对象编程——继承
……
第7章 多态性
第8章 模板与标准模板库
第9章 异常处理
第10章 输入输出流与文件
第11章 C++/CLI程序设计基础
第12章 WinForm应用程序设计
第13章 项目实践