华信教育资源网
C++程序设计基础(第5版)(上)
丛   书   名: 大学计算机规划教材
作   译   者:周霭如,林伟健 出 版 日 期:2016-05-01
出   版   社:电子工业出版社 维   护   人:冉哲 
书   代   号:G0285950 I S B N:9787121285950

图书简介:

本书的例程以VC 2010为运行环境,全书分为上、下两册:上册介绍C++程序设计的基础知识,下册介绍VC++在.Net环境下的Windows应用程序设计。本书为上册,共分12章:第1章基本数据与表达式,第2章程序控制结构,第3章函数,第4章数组,第5章集合与结构,第6章类与对象,第7章运算符重载,第8章继承,第9章虚函数与多态性,第10章模板,第11章输入/输出流,第12章异常处理。本书提供配套的电子课件和习题解答,请登录华信教育资源网(www.hxedu.com.cn)注册后免费下载。电子课件由近3000张PPT幻灯片组成,以图形语言为设计理念,充分表达程序设计课程的教学特点。本书可以作为高等学校计算机类、信息类、电类专业本科生高级语言程序设计课程教材,也可以作为教师、学生和C++语言爱好者的参考书。
定价 59.0
您的专属联系人更多
关注 评论(0) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书的例程以VC 2010为运行环境,全书分为上、下两册:上册介绍C++程序设计的基础知识,下册介绍VC++在.Net环境下的Windows应用程序设计。本书为上册,共分12章:第1章基本数据与表达式,第2章程序控制结构,第3章函数,第4章数组,第5章集合与结构,第6章类与对象,第7章运算符重载,第8章继承,第9章虚函数与多态性,第10章模板,第11章输入/输出流,第12章异常处理。本书提供配套的电子课件和习题解答,请登录华信教育资源网(www.hxedu.com.cn)注册后免费下载。电子课件由近3000张PPT幻灯片组成,以图形语言为设计理念,充分表达程序设计课程的教学特点。本书可以作为高等学校计算机类、信息类、电类专业本科生高级语言程序设计课程教材,也可以作为教师、学生和C++语言爱好者的参考书。

    图书详情

    ISBN:9787121285950
    开 本:16开
    页 数:464
    字 数:835.0

    本书目录

    第1章  基本数据与表达式	1
    1.1  概述	1
    1.1.1  程序设计与程序设计语言	1
    1.1.2  一个简单的C++程序	2
    1.1.3  程序的编译执行	4
    1.2  C++语言的字符集与词汇	5
    1.2.1  字符集	6
    1.2.2  词汇	6
    1.3  C++语言的基本数据类型与存储形式	7
    1.3.1  C++语言的数据类型	7
    1.3.2  数据存储	7
    1.3.3  基本数据类型	8
    1.4  数据对象与访问	11
    1.4.1  变量定义	11
    1.4.2  访问变量	12
    1.4.3  常量和约束访问	17
    1.5  表达式	19
    1.5.1  运算符	19
    1.5.2  算术表达式	21
    1.5.3  逻辑表达式	23
    1.5.4  赋值表达式	25
    1.5.5  条件表达式	26
    1.5.6  逗号表达式	26
    1.6  数据输入和输出	27
    1.6.1  键盘输入	27
    1.6.2  屏幕输出	27
    1.6.3  表达式语句	29
    本章小结	29
    练习题	30
    第2章  程序控制结构	36
    2.1  选择控制	36
    2.1.1  if语句	36
    2.1.2  switch语句	41
    2.2  循环控制	45
    2.2.1  while语句	45
    2.2.2  do-while语句	48
    2.2.3  for语句	52
    2.2.4  循环的嵌套	56
    2.3  判断表达式的使用	58
    2.4  转向语句	60
    本章小结	63
    练习题	63
    第3章  函数	70
    3.1  函数的定义与调用	70
    3.1.1  函数定义	70
    3.1.2  函数调用	71
    3.1.3  函数原型	71
    3.2  函数参数的传递	73
    3.2.1  传值参数	73
    3.2.2  指针参数	77
    3.2.3  引用参数	79
    3.2.4  函数的返回类型	81
    3.3  函数调用机制	84
    3.3.1  嵌套调用	84
    3.3.2  递归调用	85
    3.4  函数地址和函数指针	89
    3.4.1  函数的地址	90
    3.4.2  函数指针	91
    3.5  内联函数和重载函数	95
    3.5.1  内联函数	95
    3.5.2  重载函数	96
    3.6  变量存储特性与标识符作用域	96
    3.6.1  存储特性	97
    3.6.2  标识符的作用域与可见性	98
    3.7  多文件程序结构	101
    3.7.1  多文件结构	101
    3.7.2  预处理指令	102
    3.7.3  多文件程序使用全局变量	106
    3.8  命名空间	107
    3.8.1  标准名空间	107
    3.8.2  定义命名空间	108
    3.8.3  使用命名空间	110
    3.9  终止程序执行	111
    本章小结	113
    练习题	114
    第4章  数组	124
    4.1  一维数组	124
    4.1.1  一维数组定义与初始化	124
    4.1.2  一维数组访问	126
    4.2  指针数组	129
    4.2.1  指向基本数据类型的指针数组	129
    4.2.2  指向数组的指针数组	129
    4.2.3  指向函数的指针数组	130
    4.3  二维数组	131
    4.3.1  二维数组的定义与初始化	132
    4.3.2  二维数组访问	133
    4.4  数组作为函数参数	136
    4.4.1  向函数传送数组元素	136
    4.4.2  数组名作为函数参数	137
    4.4.3  应用举例	139
    4.5  动态存储	143
    4.5.1  new和delete操作符	143
    4.5.2  动态存储的应用	143
    4.6  字符数组与字符串	146
    4.6.1  字符串存储	146
    4.6.2  字符串的访问	148
    4.6.3  字符串处理函数	150
    4.7  STRING类	154
    本章小结	158
    练习题	159
    第5章  集合与结构	169
    5.1  位运算	169
    5.2  集合	175
    5.2.1  集合的基本运算	175
    5.2.2  集合运算的实现	175
    5.3  结构	181
    5.3.1  定义结构	181
    5.3.2  访问结构	183
    5.3.3  结构参数	185
    5.4  结构数组	187
    5.5  链表	190
    本章小结	199
    练习题	199
    第6章  类与对象	207
    6.1  类和对象的定义与访问	207
    6.1.1  定义类和对象	208
    6.1.2  访问对象成员	210
    6.1.3  this指针	211
    6.2  构造函数和析构函数	211
    6.2.1  简单构造函数和析构函数	212
    6.2.2  带参数的构造函数	213
    6.2.3  重载构造函数	215
    6.2.4  复制构造函数	215
    6.3  类的其他成员	221
    6.3.1  常成员	221
    6.3.2  静态成员	224
    6.3.3  友元	228
    6.4  类的包含	230
    本章小结	234
    练习题	234
    第7章  运算符重载	244
    7.1  运算符重载规则	244
    7.1.1  重载运算符的限制	244
    7.1.2  重载运算符的语法形式	244
    7.2  用成员或友元函数重载运算符	246
    7.2.1  用成员函数重载运算符	247
    7.2.2  用友元函数重载运算符	249
    7.3  几个典型运算符的重载	251
    7.3.1  重载++与- -	251
    7.3.2  重载赋值运算符	253
    7.3.3  重载运算符[ ]和()	254
    7.3.4  重载流插入和流提取运算符	256
    7.4  类类型转换	263
    7.4.1  构造函数进行类类型转换	263
    7.4.2  类型转换函数	264
    本章小结	268
    练习题	268
    第8章  继承	277
    8.1  类之间的关系	277
    8.2  基类和派生类	278
    8.2.1  访问控制	278
    8.2.2  重名成员	285
    8.2.3  派生类中访问静态成员	288
    8.3  基类的初始化	289
    8.4  继承的应用实例	291
    8.5  多继承	296
    8.5.1  多继承的派生类构造和访问	297
    8.5.2  虚继承	300
    本章小结	304
    练习题	305
    第9章  虚函数与多态性	314
    9.1  静态联编	314
    9.2  类指针的关系	315
    9.2.1  用基类指针引用派生类对象	315
    9.2.2  用派生类指针引用基类对象	316
    9.3  虚函数和动态联编	319
    9.3.1  虚函数和基类指针	319
    9.3.2  虚函数的重载特性	322
    9.3.3  虚析构函数	323
    9.4  纯虚函数和抽象类	325
    9.4.1  纯虚函数	325
    9.4.2  抽象类	327
    9.5  虚函数和多态性的应用	329
    9.5.1  一个实例	329
    9.5.2  异质链表	334
    本章小结	337
    练习题	337
    第10章  模板	341
    10.1  什么是模板	341
    10.2  函数模板	341
    10.2.1  模板说明	342
    10.2.2  函数模板与模板函数	342
    10.2.3  重载函数模板	344
    10.3  类模板	346
    10.3.1  类模板与模板类	346
    10.3.2  类模板作为函数参数	348
    10.3.3  在类层次中的类模板	349
    10.3.4  类模板与友元	352
    10.3.5  类模板与静态成员	354
    10.4  标准模板	355
    10.4.1  容器	355
    10.4.2  迭代器	360
    10.4.3  算法	362
    本章小结	365
    练习题	366
    第11章  输入/输出流	370
    11.1  流类和流对象	370
    11.1.1  流类库	370
    11.1.2  头文件	371
    11.2  标准流和流操作	372
    11.2.1  标准流	372
    11.2.2  输入流操作	373
    11.2.3  输出流操作	374
    11.2.4  流错误状态	375
    11.3  格式控制	377
    11.3.1  设置标志字	377
    11.3.2  格式控制符	380
    11.4  串流	382
    11.5  文件处理	384
    11.5.1  文件和流	384
    11.5.2  打开和关闭文件	385
    11.5.3  文本文件	387
    11.5.4  二进制数据文件	391
    本章小结	402
    练习题	403
    第12章  异常处理	409
    12.1  C++的异常处理机制	409
    12.2  异常处理的实现	410
    12.2.1  异常处理程序	410
    12.2.2  带异常说明的函数原型	413
    12.2.3  再抛出异常传递	414
    12.2.4  创建对象的异常处理	415
    本章小结	416
    附录A  控制台程序设计	418
    附录B  常用库函数	440
    附录C  C++关键字表	452
    附录D  ASCII码字符集	453
    展开

    前     言

    前    言
    C++语言是优秀的计算机程序设计语言,它的功能相当强大。我们编写这本书的目的是,为没有任何程序设计基础的理工科大学生提供一本适用教材,使他们掌握从理论到实践都要求很高的C++语言。
    一门课程的设置应该放在整个教学培养计划中统筹考虑。我们的教学目标不是马上培养一个会使用某种语言(例如C++语言)的程序员,而是强调对程序设计语言的理解和应用,“计算机语言”的角色是第一位的。所以,在教材编写和组织教学的过程中,我们力图通过对基本语法现象的剖析,由浅入深地让学生理解、掌握语言规则的原理,懂得用计算机指令的模式去分析和求解问题,并在机器上实现简单的程序。至于深入的算法及大程序的组织讨论,将由相关的后续课程(例如,数据结构、算法分析、计算方法、软件工程等)完成。因此,对高级程序设计语言规则的理解和应用是本教材写作的立足点。
    我们根据多年从事计算机程序设计教学的经验,按照学生学习的认知规律,精心构造整本教材的体系和叙述方式。原则是:循序渐进、难点分散、通俗而不肤浅。本教材以语法范畴和程序组织为脉络,清晰渐进。从字、词、数据、表达式、语句,到函数、类,是语法范畴构成的基本脉络;在程序功能方面,则以组织数据和组织程序为另外一条基本脉络,并以渐进的、粒度扩大的方式逐步导入分析。
    例如,数据的组织方式:基本数据类型—数组—结构—链表,体现如何利用基本数据类型根据需要组织数据;程序的组织方式:语句—函数—类,体现结构化思想和面向对象思想对程序不同的组织方式。
    指针是C++语言的重要概念,是操作对象的有力工具。本书没有一般C语言、C++语言教材中专门的“指针”一章。我们从最简单的变量开始,建立对象的名和地址的概念,用对象的不同访问方式贯穿于各章节。从结构化程序设计到面向对象程序设计,采取了比较平滑的过渡。首先,在一开始介绍基本数据类型、程序流程控制、函数等结构化程序设计的基本知识时,就非正式地使用“对象”这个术语(从计算机程序的角度,任何占有存储空间的实体都是对象);继而,掌握结构到类的演变,给出对象的准确定义;进一步,展开介绍面向对象程序的几个基本特性,即封装、继承、多态和类属在C++语言中的实现方法。同时,我们在本书的阐述中体现一个思想:没有一种对所有问题都是最好的程序设计方法,对特定问题,选择合适的解决方案是程序员必备的素质。
    本书之所以取名为《C++程序设计基础》,原因有二:第一,它不是一本C++语言手册,不可能包罗所有语法规则和特定版本提供的各种功能;第二,它没有涉及复杂的算法和工程化的面向对象分析设计方法。这两个问题与教材的定位相关。对第一个原因,我们认为学生在掌握了程序设计的基本概念和基本方法之后,可以通过语言平台(例如Visual C++)或者其他资料学习,拓展对语言功能的了解。我们在有关章节中,也做了类似的引导,例如,STL标准类库的介绍,这些内容提供给教师选择或学生自学。至于第二个原因,那些是计算机专业后续课程的教学内容。本书介绍的程序设计方法和使用到的算法都立足于基本概念和方法,所以,例程通常是简单和小规模的。
    本书分别在2003年、2006年、2009年和2012年出版了第1~4版,目前为第5版。上册介绍程序设计的基础知识,在第5章中增加了一节讨论结构参数;第11章增加了文件应用的例程。全书按节配置习题,以方便学生自学。下册介绍VC++在.NET环境下的Windows应用程序设计,增加了一章用于强化综合训练的设计案例。
    上册共分12章,主要内容包括:基本数据与表达式、程序控制结构、函数、数组、集合与结构、类与对象、运算符重载、继承、虚函数与多态性、模板、输入/输出流、异常处理。
    本书提供配套的电子课件和习题解答,请登录华信教育资源网(www.hxedu.com.cn)注册后免费下载。电子课件由近3000张PPT幻灯片组成,以图形语言为设计理念,充分表达程序设计课程的教学特点。
    本书可以作为高等学校计算机类、信息类、电类专业本科生高级语言程序设计课程教材,也可以作为教师、学生和C++语言爱好者的参考书。
    本书的编写过程,是作者不断向学生学习,向同行学习,向C++学习的过程。在此,对所有使用本书的教师、学生,以及热心向我们提出宝贵意见的读者致以诚挚的感谢!希望继续得到读者的支持和帮助。
    
    作  者  
    
    
    课程简介
    华南理工大学计算机学院开设的“高级语言程序设计(C++)”课程是2007年国家级精品网络课程,2012年国家级精品资源共享课程。本书是该课程的使用教材。
    相关网站链接可以扫描以下二维码获得。
    爱课程: 
    http://www.icourses.cn/coursestatic/course_5847.html
    华南理工大学网络学院: 
    http://cs.scutde.net/courses/course_10/index.html
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网