C++程序设计教程

C++程序设计教程
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: ,
2019-04
版次: 1
ISBN: 9787113256241
定价: 45.00
装帧: 平装
  • 本书围绕素质教育和应用型人才培养目标,结合编者多年的教学实践经验,依据学生技能训练的实际情况,精心组织编写。本书共分两部分:第1章至第7章是C++语言基础知识,较为全面地介绍了程序设计语言C++的基本概念、基本语法和程序结构以及过程化程序思想;第8章至第14章是面向对象程序设计,它建立在C++程序设计基础之上,讲述了面向对象程序设计方法。 

    本书主要针对零起点的读者,适合作为高等院校理工科学生学习C++的入门教材,也可以作为全国计算机等级考试(二级C++语言程序设计)的参考书。为方便广大读者学习,编者同时编写了《C++程序设计实践教程》,供读者参考和自行练习。 王樱:副教授,衡阳师范学院教师。近期主持与参与省级以上教研项目5项,发表教研论文6篇,主编教材8部,先后荣获“十佳”授课教师、A类课教师、魅力女教职工、优秀实习指导教师等称号。李浪:教授、博士生导师、衡阳师范学院计算机科学与技术学院院长。湖南省高校青年骨干教师,计算机科学与技术重点学科带头人,湖南省计算机学会常务理事,湖南省高教学会计算机教育专委会常务理事。主要研究领域为嵌入式计算与信息安全,主持了国家自然科学基金面上项目1项,中央引导地方科技发展专项1项,省自然科学基金科研项目2项,省科技厅科技计划项目2项,省教育厅科研重点项目、青年项目、一般项目各1项。主持了省教育厅教改项目1项。 第1部分 C++语言基础知识 

    第1章 C++语言概述 2 

    1.1 计算机语言简介 2 

    1.2 C++语言的发展 4 

    1.3 数据信息的表示与存储 5 

    1.3.1 数据的存储单位 5 

    1.3.2 数值数据的表示 6 

    1.3.3 数值数据的编码(原码、反码与补码) 7 

    1.3.4 文本数据的表示(ASCII码) 8 

    1.4 一个简单的C++程序 9 

    1.5 C++程序的构成和书写形式 10 

    1.5.1 C++源程序的结构特点 10 

    1.5.2 书写程序时应遵循的规则 11 

    1.6 C++程序的开发过程 11 

    1.6.1 Visual Studio 2010集成开发环境 12 

    1.6.2 项目与解决方案 14 

    第2章 C++编程基础 16 

    2.1 关键字和标识符 16 

    2.2 数据类型 17 

    2.3 常量和变量 19 

    2.3.1 常量 19 

    2.3.2 变量 20 

    2.3.3 符号常量 21 

    2.4 运算符和表达式 22 

    2.4.1 算术运算符和算术表达式 23 

    2.4.2 赋值运算符和赋值表达式 25 

    2.4.3 关系运算符和关系表达式 26 

    2.4.4 逻辑运算符和逻辑表达式 27 

    2.4.5 条件运算符和条件表达式 28 

    2.4.6 位运算 28 

    2.4.7 其他运算符 29 

    2.5 数据类型转换 30 

    2.5.1 自动类型转换 30 

    2.5.2 强制类型转换 30 

    2.6 基本输入/输出 31 

    2.6.1 标准输入流和标准输出流 31 

    2.6.2 I/O流的格式控制 32 

    第3章 C++基本控制结构程序设计 35 

    3.1 C++语句 35 

    3.2 顺序结构程序设计 37 

    3.3 分支结构程序设计 38 

    3.3.1 if语句 38 

    3.3.2 switch语句 44 

    3.3.3 分支结构程序举例 45 

    3.4 循环结构程序设计 46 

    3.4.1 while语句 47 

    3.4.2 do...while语句 48 

    3.4.3 for语句 50 

    3.4.4 循环嵌套 52 

    3.4.5 break和continue语句 54 

    3.4.6 循环结构程序举例 55 

    第4章 函数与预处理 58 

    4.1 概述 58 

    4.1.1 函数的基本概念 58 

    4.1.2 C++程序的函数组成 58 

    4.1.3 函数的分类 59 

    4.2 函数定义及调用 59 

    4.2.1 函数的定义 59 

    4.2.2 函数的调用 60 

    4.2.3 函数原型声明 62 

    4.2.4 函数的嵌套调用和递归调用 62 

    4.3 C++中的特殊函数 65 

    4.3.1 内联函数 65 

    4.3.2 重载函数 66 

    4.3.3 具有默认参数值的函数 66 

    4.4 函数模板 68 

    4.5 局部变量和全局变量 69 

    4.5.1 局部作用域和局部变量 69 

    4.5.2 全局作用域和全局变量 70 

    4.6 变量的生存期和存储类别 71 

    4.6.1 变量的生存期 71 

    4.6.2 变量的存储类别 72 

    4.7 内部函数和外部函数 76 

    4.7.1 内部函数 76 

    4.7.2 外部函数 76 

    4.8 编译预处理 77 

    4.8.1 宏定义 78 

    4.8.2 文件包含 78 

    4.8.3 条件编译 79 

    第5章 数组 81 

    5.1 概述 81 

    5.2 数组简介 81 

    5.2.1 数组声明 81 

    5.2.2 数组元素的使用 82 

    5.2.3 数组的存储 82 

    5.2.4 数组的初始化 83 

    5.3 数组作为函数参数 86 

    5.3.1 数组元素作为函数参数 86 

    5.3.2 数组名作为函数参数 87 

    5.4 字符数组与字符串 88 

    5.4.1 字符数组的定义和引用 89 

    5.4.2 字符数组的初始化 89 

    5.4.3 字符数组的应用 89 

    第6章 指针和引用 91 

    6.1 指针的概念 91 

    6.1.1 指针和指针变量 92 

    6.1.2 指针变量的声明和赋值 92 

    6.1.3 指针的基本运算 93 

    6.2 指针与数组 94 

    6.2.1 指针与一维数组 94 

    6.2.2 指针与二维数组 96 

    6.2.3 指向字符串的指针变量 98 

    6.2.4 指针数组和多级指针 99 

    6.3 指针和函数 99 

    6.3.1 指针作为函数参数 99 

    6.3.2 返回指针值的函数 100 

    6.3.3 指向函数指针 101 

    6.4 动态存储分配 102 

    6.4.1 概念 102 

    6.4.2 new操作符 102 

    6.4.3 delete操作符 103 

    6.5 引用 104 

    6.5.1 引用的定义 104 

    6.5.2 引用的操作 104 

    6.5.3 用引用作为函数的参数 105 

    第7章 自定义数据类型 107 

    7.1 结构体类型 107 

    7.1.1 结构体类型的定义 107 

    7.1.2 结构体类型变量的定义及其初始化 109 

    7.1.3 结构体类型的使用 109 

    7.2 枚举类型 111 

    7.3 联合体类型 112 

    第2部分 面向对象程序设计 

    第8章 类与对象 115 

    8.1 面向对象程序设计的基本特征 115 

    8.2 类和对象 117 

    8.2.1 类的定义 118 

    8.2.2 类成员的访问控制 119 

    8.2.3 类的成员函数 120 

    8.2.4 对象的创建与使用 121 

    8.2.5 this指针 125 

    8.3 构造函数和析构函数 126 

    8.3.1 构造函数 127 

    8.3.2 析构函数 130 

    8.4 拷贝构造函数 131 

    8.4.1 拷贝构造函数简介 132 

    8.4.2 浅拷贝与深拷贝 133 

    8.5 类的组合 136 

    8.5.1 组合类的定义 136 

    8.5.2 组合类的构造函数 137 

    8.5.3 前向引用声明 138 

    8.6 类的友元 140 

    8.6.1 友元函数 140 

    8.6.2 友元类 142 

    8.7 类的静态成员 144 

    8.7.1 静态数据成员 144 

    8.7.2 静态函数成员 147 

    第9章 继承与派生 150 

    9.1 继承和派生的概念 151 

    9.2 继承的实现 152 

    9.2.1 派生类的定义 152 

    9.2.2 派生类的构成 154 

    9.2.3 继承的访问控制 155 

    9.2.4 类型兼容规则 160 

    9.3 派生类的构造函数与析构函数 162 

    9.3.1 派生类的构造函数 162 

    9.3.2 派生类的拷贝构造函数 165 

    9.3.3 派生类的析构函数 165 

    9.4 多继承 167 

    9.4.1 多继承中的二义性 167 

    9.4.2 虚基类 168 

    9.4.3 虚基类及其派生类构造函数 169 

    第10章 多态性与虚函数 172 

    10.1 多态性 172 

    10.2 虚函数 172 

    10.2.1 一般虚函数成员 173 

    10.2.2 虚析构函数 174 

    10.3 纯虚函数与抽象类 177 

    10.3.1 纯虚函数 177 

    10.3.2 抽象类 177 

    第11章 运算符重载 180 

    11.1 运算符重载的概念 180 

    11.2 运算符重载的规则和语法 181 

    11.2.1 运算符重载的规则 181 

    11.2.2 运算符重载的语法 181 

    11.3 赋值运算符重载 187 

    11.4 输入/输出运算符重载 189 

    第12章 标准模板库 192 

    12.1 STL简介 192 

    12.2 C++基础 193 

    12.2.1 类 193 

    12.2.2 函数对象 193 

    12.2.3 模板 194 

    12.3 容器 196 

    12.3.1 向量 196 

    12.3.2 线性表 198 

    12.3.3 双向队列 198 

    12.3.4 关联容器 198 

    12.4 迭代器 200 

    12.4.1 输入和输出迭代器 200 

    12.4.2 前向迭代器 200 

    12.4.3 双向迭代器 201 

    12.4.4 任意存取迭代器 202 

    12.4.5 迭代标签 202 

    12.5 算法和函数对象 203 

    12.5.1 如何创建泛型算法 203 

    12.5.2 STL算法 205 

    12.6 适配器 207 

    12.6.1 容器适配器 207 

    12.6.2 迭代适配器 207 

    12.6.3 函数适配器 208 

    12.7 其余的STL部件 208 

    第13章 输入/输出流 210 

    13.1 在输入流与输出流中使用控制符 210 

    13.2 C++输入/输出文件流 212 

    13.2.1 打开文件 212 

    13.2.2 关闭文件 213 

    13.2.3 文本文件 213 

    13.2.4 状态标志符的验证 214 

    13.2.5 获得和设置流指针 215 

    第14章 异常处理 218 

    14.1 异常处理简介 218 

    14.2 异常处理方式 218 

    14.2.1 抛出异常 218 

    14.2.2 捕获异常 219 

    14.3 标准异常 221 

    14.4 自定义异常 222 

    14.5 异常规格说明 223 

    附录A C++语言中运算符的优先级和结合性 226 

    附录B ASCII码字符集 228 

    参考文献 230
  • 内容简介:
    本书围绕素质教育和应用型人才培养目标,结合编者多年的教学实践经验,依据学生技能训练的实际情况,精心组织编写。本书共分两部分:第1章至第7章是C++语言基础知识,较为全面地介绍了程序设计语言C++的基本概念、基本语法和程序结构以及过程化程序思想;第8章至第14章是面向对象程序设计,它建立在C++程序设计基础之上,讲述了面向对象程序设计方法。 

    本书主要针对零起点的读者,适合作为高等院校理工科学生学习C++的入门教材,也可以作为全国计算机等级考试(二级C++语言程序设计)的参考书。为方便广大读者学习,编者同时编写了《C++程序设计实践教程》,供读者参考和自行练习。
  • 作者简介:
    王樱:副教授,衡阳师范学院教师。近期主持与参与省级以上教研项目5项,发表教研论文6篇,主编教材8部,先后荣获“十佳”授课教师、A类课教师、魅力女教职工、优秀实习指导教师等称号。李浪:教授、博士生导师、衡阳师范学院计算机科学与技术学院院长。湖南省高校青年骨干教师,计算机科学与技术重点学科带头人,湖南省计算机学会常务理事,湖南省高教学会计算机教育专委会常务理事。主要研究领域为嵌入式计算与信息安全,主持了国家自然科学基金面上项目1项,中央引导地方科技发展专项1项,省自然科学基金科研项目2项,省科技厅科技计划项目2项,省教育厅科研重点项目、青年项目、一般项目各1项。主持了省教育厅教改项目1项。
  • 目录:
    第1部分 C++语言基础知识 

    第1章 C++语言概述 2 

    1.1 计算机语言简介 2 

    1.2 C++语言的发展 4 

    1.3 数据信息的表示与存储 5 

    1.3.1 数据的存储单位 5 

    1.3.2 数值数据的表示 6 

    1.3.3 数值数据的编码(原码、反码与补码) 7 

    1.3.4 文本数据的表示(ASCII码) 8 

    1.4 一个简单的C++程序 9 

    1.5 C++程序的构成和书写形式 10 

    1.5.1 C++源程序的结构特点 10 

    1.5.2 书写程序时应遵循的规则 11 

    1.6 C++程序的开发过程 11 

    1.6.1 Visual Studio 2010集成开发环境 12 

    1.6.2 项目与解决方案 14 

    第2章 C++编程基础 16 

    2.1 关键字和标识符 16 

    2.2 数据类型 17 

    2.3 常量和变量 19 

    2.3.1 常量 19 

    2.3.2 变量 20 

    2.3.3 符号常量 21 

    2.4 运算符和表达式 22 

    2.4.1 算术运算符和算术表达式 23 

    2.4.2 赋值运算符和赋值表达式 25 

    2.4.3 关系运算符和关系表达式 26 

    2.4.4 逻辑运算符和逻辑表达式 27 

    2.4.5 条件运算符和条件表达式 28 

    2.4.6 位运算 28 

    2.4.7 其他运算符 29 

    2.5 数据类型转换 30 

    2.5.1 自动类型转换 30 

    2.5.2 强制类型转换 30 

    2.6 基本输入/输出 31 

    2.6.1 标准输入流和标准输出流 31 

    2.6.2 I/O流的格式控制 32 

    第3章 C++基本控制结构程序设计 35 

    3.1 C++语句 35 

    3.2 顺序结构程序设计 37 

    3.3 分支结构程序设计 38 

    3.3.1 if语句 38 

    3.3.2 switch语句 44 

    3.3.3 分支结构程序举例 45 

    3.4 循环结构程序设计 46 

    3.4.1 while语句 47 

    3.4.2 do...while语句 48 

    3.4.3 for语句 50 

    3.4.4 循环嵌套 52 

    3.4.5 break和continue语句 54 

    3.4.6 循环结构程序举例 55 

    第4章 函数与预处理 58 

    4.1 概述 58 

    4.1.1 函数的基本概念 58 

    4.1.2 C++程序的函数组成 58 

    4.1.3 函数的分类 59 

    4.2 函数定义及调用 59 

    4.2.1 函数的定义 59 

    4.2.2 函数的调用 60 

    4.2.3 函数原型声明 62 

    4.2.4 函数的嵌套调用和递归调用 62 

    4.3 C++中的特殊函数 65 

    4.3.1 内联函数 65 

    4.3.2 重载函数 66 

    4.3.3 具有默认参数值的函数 66 

    4.4 函数模板 68 

    4.5 局部变量和全局变量 69 

    4.5.1 局部作用域和局部变量 69 

    4.5.2 全局作用域和全局变量 70 

    4.6 变量的生存期和存储类别 71 

    4.6.1 变量的生存期 71 

    4.6.2 变量的存储类别 72 

    4.7 内部函数和外部函数 76 

    4.7.1 内部函数 76 

    4.7.2 外部函数 76 

    4.8 编译预处理 77 

    4.8.1 宏定义 78 

    4.8.2 文件包含 78 

    4.8.3 条件编译 79 

    第5章 数组 81 

    5.1 概述 81 

    5.2 数组简介 81 

    5.2.1 数组声明 81 

    5.2.2 数组元素的使用 82 

    5.2.3 数组的存储 82 

    5.2.4 数组的初始化 83 

    5.3 数组作为函数参数 86 

    5.3.1 数组元素作为函数参数 86 

    5.3.2 数组名作为函数参数 87 

    5.4 字符数组与字符串 88 

    5.4.1 字符数组的定义和引用 89 

    5.4.2 字符数组的初始化 89 

    5.4.3 字符数组的应用 89 

    第6章 指针和引用 91 

    6.1 指针的概念 91 

    6.1.1 指针和指针变量 92 

    6.1.2 指针变量的声明和赋值 92 

    6.1.3 指针的基本运算 93 

    6.2 指针与数组 94 

    6.2.1 指针与一维数组 94 

    6.2.2 指针与二维数组 96 

    6.2.3 指向字符串的指针变量 98 

    6.2.4 指针数组和多级指针 99 

    6.3 指针和函数 99 

    6.3.1 指针作为函数参数 99 

    6.3.2 返回指针值的函数 100 

    6.3.3 指向函数指针 101 

    6.4 动态存储分配 102 

    6.4.1 概念 102 

    6.4.2 new操作符 102 

    6.4.3 delete操作符 103 

    6.5 引用 104 

    6.5.1 引用的定义 104 

    6.5.2 引用的操作 104 

    6.5.3 用引用作为函数的参数 105 

    第7章 自定义数据类型 107 

    7.1 结构体类型 107 

    7.1.1 结构体类型的定义 107 

    7.1.2 结构体类型变量的定义及其初始化 109 

    7.1.3 结构体类型的使用 109 

    7.2 枚举类型 111 

    7.3 联合体类型 112 

    第2部分 面向对象程序设计 

    第8章 类与对象 115 

    8.1 面向对象程序设计的基本特征 115 

    8.2 类和对象 117 

    8.2.1 类的定义 118 

    8.2.2 类成员的访问控制 119 

    8.2.3 类的成员函数 120 

    8.2.4 对象的创建与使用 121 

    8.2.5 this指针 125 

    8.3 构造函数和析构函数 126 

    8.3.1 构造函数 127 

    8.3.2 析构函数 130 

    8.4 拷贝构造函数 131 

    8.4.1 拷贝构造函数简介 132 

    8.4.2 浅拷贝与深拷贝 133 

    8.5 类的组合 136 

    8.5.1 组合类的定义 136 

    8.5.2 组合类的构造函数 137 

    8.5.3 前向引用声明 138 

    8.6 类的友元 140 

    8.6.1 友元函数 140 

    8.6.2 友元类 142 

    8.7 类的静态成员 144 

    8.7.1 静态数据成员 144 

    8.7.2 静态函数成员 147 

    第9章 继承与派生 150 

    9.1 继承和派生的概念 151 

    9.2 继承的实现 152 

    9.2.1 派生类的定义 152 

    9.2.2 派生类的构成 154 

    9.2.3 继承的访问控制 155 

    9.2.4 类型兼容规则 160 

    9.3 派生类的构造函数与析构函数 162 

    9.3.1 派生类的构造函数 162 

    9.3.2 派生类的拷贝构造函数 165 

    9.3.3 派生类的析构函数 165 

    9.4 多继承 167 

    9.4.1 多继承中的二义性 167 

    9.4.2 虚基类 168 

    9.4.3 虚基类及其派生类构造函数 169 

    第10章 多态性与虚函数 172 

    10.1 多态性 172 

    10.2 虚函数 172 

    10.2.1 一般虚函数成员 173 

    10.2.2 虚析构函数 174 

    10.3 纯虚函数与抽象类 177 

    10.3.1 纯虚函数 177 

    10.3.2 抽象类 177 

    第11章 运算符重载 180 

    11.1 运算符重载的概念 180 

    11.2 运算符重载的规则和语法 181 

    11.2.1 运算符重载的规则 181 

    11.2.2 运算符重载的语法 181 

    11.3 赋值运算符重载 187 

    11.4 输入/输出运算符重载 189 

    第12章 标准模板库 192 

    12.1 STL简介 192 

    12.2 C++基础 193 

    12.2.1 类 193 

    12.2.2 函数对象 193 

    12.2.3 模板 194 

    12.3 容器 196 

    12.3.1 向量 196 

    12.3.2 线性表 198 

    12.3.3 双向队列 198 

    12.3.4 关联容器 198 

    12.4 迭代器 200 

    12.4.1 输入和输出迭代器 200 

    12.4.2 前向迭代器 200 

    12.4.3 双向迭代器 201 

    12.4.4 任意存取迭代器 202 

    12.4.5 迭代标签 202 

    12.5 算法和函数对象 203 

    12.5.1 如何创建泛型算法 203 

    12.5.2 STL算法 205 

    12.6 适配器 207 

    12.6.1 容器适配器 207 

    12.6.2 迭代适配器 207 

    12.6.3 函数适配器 208 

    12.7 其余的STL部件 208 

    第13章 输入/输出流 210 

    13.1 在输入流与输出流中使用控制符 210 

    13.2 C++输入/输出文件流 212 

    13.2.1 打开文件 212 

    13.2.2 关闭文件 213 

    13.2.3 文本文件 213 

    13.2.4 状态标志符的验证 214 

    13.2.5 获得和设置流指针 215 

    第14章 异常处理 218 

    14.1 异常处理简介 218 

    14.2 异常处理方式 218 

    14.2.1 抛出异常 218 

    14.2.2 捕获异常 219 

    14.3 标准异常 221 

    14.4 自定义异常 222 

    14.5 异常规格说明 223 

    附录A C++语言中运算符的优先级和结合性 226 

    附录B ASCII码字符集 228 

    参考文献 230
查看详情
相关图书 / 更多
C++程序设计教程
C++之旅(第3版)(英文版)
(美)本贾尼·斯特劳斯特鲁普
C++程序设计教程
C++趣味编程及算法入门 全国青少年软件编程等级考试与信息学竞赛通关指南(附600道习题+700个教学视频)
王桂平 等 编著
C++程序设计教程
C++那些事
程克非,张兴,崔晓通,秦蔚蓉
C++程序设计教程
C++编程这样学
胡芳
C++程序设计教程
C++程序设计案例教程(线上线下混合版)
杨卫明;李晓虹
C++程序设计教程
C++之旅(第3版)
[美]Bjarne Stroustrup(本贾尼 斯特劳斯特鲁普
C++程序设计教程
C++面向对象程序设计(第4版)
谭浩强
C++程序设计教程
C++高性能编程
(瑞典)比约恩 安德里斯特(Bj.rn Andrist),(瑞典)维克托 塞尔(Viktor Sehr)
C++程序设计教程
C++开发案例精讲
杨国兴 著
C++程序设计教程
C++ Concurrency in Action
Anthony Williams
C++程序设计教程
C++语言设计教程(计算机专业十四五精品教材)
苏菲、王芬、朱腾 编
C++程序设计教程
C++程序设计基础教程
丁卫平 程学云 陈文兰 主编;任红建 沈晓红 文万志 副主编