登录 注册
当前位置:主页 > 资源下载 > 50 > 大学C++教程

大学C++教程

  • 更新:2024-05-25 17:43:08
  • 大小:0B
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:IOS - 移动开发
  • 格式:RAR

资源介绍

C++大学教程(目录) 第1章 计算机与C++编程简介-------------------------------------------------1 1.1 简介--------------------------------------------------------------1 1.2 什么是计算机------------------------------------------------------3 1.3 计算机组成--------------------------------------------------------3 1.4 操作系统的变革----------------------------------------------------4 1.5 个人计算、分布式计算与客户/服务器计算-----------------------------4 1.6 机器语言、汇编语言和高级语言--------------------------------------5 1.7 C语言与C++的历史--------------------------------------------------6 1.8 C++标准库---------------------------------------------------------7 1.9 Java、Internet与万维网--------------------------------------------7 1.10 其它高级语言------------------------------------------------------8 1.11 结构化编程--------------------------------------------------------8 1.12 典型C++环境基础---------------------------------------------------8 1.13 C++与本书的一般说明----------------------------------------------10 1.14 C++编程简介------------------------------------------------------11 1.15 简单程序:打印一行文本-------------------------------------------12 1.16 简单程序:两个整数相加-------------------------------------------15 1.17 内存的概念-------------------------------------------------------18 1.18 算术运算---------------------------------------------------------19 1.19 判断:相等与关系运算---------------------------------------------21 1.20 新型头文件与名字空间---------------------------------------------24 1.21 有关对象的思考---------------------------------------------------25 小结------------------------------------------------------------------27 术语------------------------------------------------------------------29 自测练习--------------------------------------------------------------31 自测练习答案----------------------------------------------------------33 练习------------------------------------------------------------------34 第2章 控制结构-----------------------------------------------------------38 2.1 简介-------------------------------------------------------------38 2.2 算法-------------------------------------------------------------38 2.3 伪代码------------------------------------------------------------39 2.4 控制结构----------------------------------------------------------39 2.5 if选择结构--------------------------------------------------------41 2.6 if/else选择结构---------------------------------------------------42 2.7 while重复结构-----------------------------------------------------45 2.8 构造算法:实例研究1(计数器控制重复)------------------------------47 2.9 构造算法与自上而下逐步完善:实例研究2(标记控制重复)--------------48 2.10 构造算法与自上而下逐步完善:实例研究3(嵌套控制结构)--------------54 2.11 赋值运算符-------------------------------------------------------57 2.12 自增与自减运算符-------------------------------------------------58 2.13 计数器循环的要点-------------------------------------------------60 2.14 for重复结构------------------------------------------------------62 2.15 for结构使用举例--------------------------------------------------65 2.16 switch多项选择结构-----------------------------------------------68 2.17 do/while重复结构-------------------------------------------------74 2.18 break和continue语句----------------------------------------------75 2.19 逻辑运算符-------------------------------------------------------77 2.20 混淆相等(==)与赋值(=)运算符--------------------------------------79 2.21 结构化编程小结---------------------------------------------------80 2.22 有关对象的思考:问题中的对象-------------------------------------84 小结------------------------------------------------------------------85 术语------------------------------------------------------------------86 自测练习--------------------------------------------------------------87 自测练习答案----------------------------------------------------------89 练习------------------------------------------------------------------92 第3章 函数-------------------------------------------------------------102 3.1 简介------------------------------------------------------------102 3.2 C++程序组件-----------------------------------------------------102 3.3 数学函数库------------------------------------------------------103 3.4 函数------------------------------------------------------------104 3.5 函数定义--------------------------------------------------------105 3.6 函数原型--------------------------------------------------------108 3.7 头文件----------------------------------------------------------110 3.8 随机数产生器----------------------------------------------------111 3.9 案例:机会游戏与enum简介----------------------------------------115 3.10 存储类----------------------------------------------------------118 3.11 作用域规则------------------------------------------------------120 3.12 递归------------------------------------------------------------123 3.13 使用递归举例:Fibonacci数列-------------------------------------125 3.14 递归与迭代------------------------------------------------------128 3.15 带空参数表的函数------------------------------------------------129 3.16 内联函数--------------------------------------------------------130 3.17 引用与引用参数--------------------------------------------------131 3.18 默认参数--------------------------------------------------------135 3.19 一元作用域运算符------------------------------------------------136 3.20 函数重载--------------------------------------------------------137 3.21 函数模板--------------------------------------------------------138 3.22 有关对象的思考:确定对象属性------------------------------------140 小结-----------------------------------------------------------------142 术语-----------------------------------------------------------------145 自测练习-------------------------------------------------------------146 自测练习答案---------------------------------------------------------149 练习-----------------------------------------------------------------151 第4章 数组-------------------------------------------------------------160 4.1 简介------------------------------------------------------------160 4.2 数组------------------------------------------------------------160 4.3 声明数组--------------------------------------------------------162 4.4 使用数组的举例--------------------------------------------------162 4.5 将数组传递给函数------------------------------------------------174 4.6 排序数组--------------------------------------------------------177 4.7 实例研究:用数组计算平均值、中数和模----------------------------179 4.8 查找数组:线性查找与折半查找------------------------------------182 4.9 多下标数组------------------------------------------------------186 4.10 有关对象的思考:确定类的行为------------------------------------191 小结-----------------------------------------------------------------192 术语-----------------------------------------------------------------193 自测练习-------------------------------------------------------------194 自测练习答案---------------------------------------------------------195 练习-----------------------------------------------------------------196 递归练习-------------------------------------------------------------204 第5章 指针与字符串-----------------------------------------------------206 5.1 简介------------------------------------------------------------206 5.2 指针变量的声明与初始化------------------------------------------206 5.3 指针运算符------------------------------------------------------207 5.4 按引用调用函数--------------------------------------------------210 5.5 指针与常量限定符------------------------------------------------213 5.6 按引用调用的冒泡排序--------------------------------------------218 5.7 指针表达式与指针算法--------------------------------------------222 5.8 指针与数组的关系------------------------------------------------224 5.9 指针数组--------------------------------------------------------228 5.10 实例研究:洗牌与发牌--------------------------------------------228 5.11 函数指针--------------------------------------------------------232 5.12 字符与字符串处理简介--------------------------------------------236 5.12.1 字符与字符串基础-----------------------------------------236 5.12.2 字符串处理库的字符串操作函数-----------------------------238 5.13 有关对象的思考:对象间的交互------------------------------------244 小结-----------------------------------------------------------------245 自测练习-------------------------------------------------------------248 自测练习答案---------------------------------------------------------250 练习-----------------------------------------------------------------251 特殊小节:建立自己的计算机-------------------------------------------254 更多的指针练习-------------------------------------------------------258 字符串操作练习-------------------------------------------------------262 特殊小节:高级字符串操作练习-----------------------------------------263 复杂字符串操作练习---------------------------------------------------266 第6章 类与数据抽象(一)-------------------------------------------------267 6.1 简介------------------------------------------------------------267 6.2 结构定义--------------------------------------------------------268 6.3 访问结构成员----------------------------------------------------268 6.4 用struct实现用户自定义类型Time----------------------------------269 6.5 用类实现Time抽象数据类型----------------------------------------271 6.6 类范围与访问类成员----------------------------------------------276 6.7 接口与实现方法的分离--------------------------------------------277 6.8 控制对成员的访问------------------------------------------------280 6.9 访问函数与工具函数----------------------------------------------282 6.10 初始化类对象:构造函数------------------------------------------284 6.11 在构造函数中默认参数--------------------------------------------285 6.12 使用析构函数----------------------------------------------------288 6.13 何时调用构造函数与析构函数--------------------------------------288 6.14 使用数据成员和成员函数------------------------------------------291 6.15 微妙和陷井:返回对private数据成员的引用-------------------------295 6.16 通过默认的成员复制进行赋值--------------------------------------297 6.17 软件复用性------------------------------------------------------298 6.18 有关对象的思考:编写电梯模拟程序的类----------------------------298 小结-----------------------------------------------------------------299 术语-----------------------------------------------------------------300 自测练习-------------------------------------------------------------301 自测练习答案---------------------------------------------------------302 练习-----------------------------------------------------------------302 第7章 类与数据抽象(二)-------------------------------------------------305 7.1 简介------------------------------------------------------------305 7.2 const(常量)对象与const成员函数----------------------------------305 7.3 复合:把对象作为类成员------------------------------------------312 7.4 友元函数与友元类------------------------------------------------316 7.5 使用this指针----------------------------------------------------319 7.6 动态内存分配与new和delete运算符---------------------------------323 7.7 static成员------------------------------------------------------324 7.8 数据抽象与信息隐藏----------------------------------------------328 7.8.1 范例:数组抽象数据类型--------------------------------------329 7.8.2 范例:字符串抽象数据类型------------------------------------330 7.8.3 范例:队列抽象数据类型--------------------------------------330 7.9 容器类与迭代----------------------------------------------------330 7.10 代理类----------------------------------------------------------331 7.11 有关对象的思考:在电梯模拟程序中使用复合和动态对象管理----------332 小结-----------------------------------------------------------------333 术语-----------------------------------------------------------------334 自测练习-------------------------------------------------------------335 自测练习答案---------------------------------------------------------335 练习-----------------------------------------------------------------336 第8章 运算符重载-------------------------------------------------------338 8.1 简介------------------------------------------------------------338 8.2 运算符重载的基础------------------------------------------------338 8.3 运算符重载的限制------------------------------------------------340 8.4 用作类成员与友元函数的运算符函数--------------------------------341 8.5 重载流插入与流读取运算符----------------------------------------342 8.6 重载一元运算符--------------------------------------------------344 8.7 重载二元运算符--------------------------------------------------345 8.8 实例研究:Array类-----------------------------------------------345 8.9 类型之间的转换--------------------------------------------------356 8.10 实例研究:String类----------------------------------------------356 8.11 重载++与-- ----------------------------------------------------366 8.12 实例研究:Date类------------------------------------------------367 小结-----------------------------------------------------------------371 术语-----------------------------------------------------------------373 自测练习-------------------------------------------------------------374 自测练习答案---------------------------------------------------------374 练习-----------------------------------------------------------------374 第9章 继承-------------------------------------------------------------381 9.1 简介------------------------------------------------------------381 9.2 继承:基类和派生类----------------------------------------------382 9.3 protected成员---------------------------------------------------384 9.4 把基类指针强制转换为派生类指针----------------------------------384 9.5 使用成员函数----------------------------------------------------388 9.6 在派生类中重定义基类成员----------------------------------------389 9.7 public、protected和private继承----------------------------------392 9.8 直接基类和间接基类----------------------------------------------393 9.9 在派生类中使用构造函数和析构函数--------------------------------393 9.10 将派生类对象隐式转换为基类对象----------------------------------396 9.11 关于继承的软件工程----------------------------------------------397 9.12 复合与继承的比较------------------------------------------------398 9.13 对象的“使用”关系与“知道”关系--------------------------------398 9.14 实例研究:类Point、Circle和Cylinder-----------------------------398 9.15 多重继承--------------------------------------------------------404 小结-----------------------------------------------------------------408 术语-----------------------------------------------------------------410 自测练习-------------------------------------------------------------410 自测练习答案---------------------------------------------------------411 练习-----------------------------------------------------------------411 第10章 虚函数与多态性---------------------------------------------------412 10.1 简介-----------------------------------------------------------412 10.2 类型域和switch语句---------------------------------------------412 10.3 虚函数---------------------------------------------------------412 10.4 抽象基类和具体类-----------------------------------------------413 10.5 多态性---------------------------------------------------------414 10.6 实例研究:利用多态性的工资单系统-------------------------------415 10.7 新类和动态关联-------------------------------------------------424 10.8 虚析构函数-----------------------------------------------------424 10.9 实例研究:继承接口和实现---------------------------------------425 10.10 多态、虚函数和动态关联-----------------------------------------431 小结-----------------------------------------------------------------434 术语-----------------------------------------------------------------435 自测练习-------------------------------------------------------------435 自测练习答案---------------------------------------------------------436 练习-----------------------------------------------------------------436 第11章 C++输入/输出流--------------------------------------------------437 11.1 简介-----------------------------------------------------------437 11.2 流-------------------------------------------------------------438 11.2.1 iostream类库的头文件---------------------------------------438 11.2.2 输入/输出流类和对象----------------------------------------438 11.3 输出流---------------------------------------------------------439 11.3.1 流插入运算符-----------------------------------------------440 11.3.2 连续使用流和插入/流读取运算符------------------------------441 11.3.3 输出char*类型的变量----------------------------------------442 11.3.4 用成员函数put输出字符和put函数的连续调用-------------------443 11.4 输入流---------------------------------------------------------443 11.4.1 流读取运算符-----------------------------------------------443 11.4.2 成员函数get和getline---------------------------------------445 11.4.3 istream类中的其它成员函数(peek、putback和ignore)-----------447 11.4.4 类型安全的I/O----------------------------------------------448 11.5 成员函数read、gcount和write的无格式输入/输出-------------------448 11.6 流操纵算子-----------------------------------------------------449 11.6.1 整数流的基数:流操纵算子dec、oct、hex和setbase-------------449 11.6.2 设置浮点数精度(precision、setprecision)--------------------450 11.6.3 设置域宽(setw、width)--------------------------------------451 11.6.4 用户自定义的流操纵算子-------------------------------------452 11.7 流格式状态-----------------------------------------------------453 11.7.1 格式状态标志-----------------------------------------------453 11.7.2 尾数零和十进制小数点(ios::showpoint)-----------------------454 11.7.3 对齐(ios::left、ios::right、ios::internal)-----------------454 11.7.4 设置填充字符(fill、setfill)--------------------------------456 11.7.5 整数流的基数:(ios:dec、ios::oct、ios::hex、ios::showbase)--457 11.7.6 浮点数和科学记数法(ios::scientific、ios::fixed)------------457 11.7.7 大/小写控制(ios::uppercase)--------------------------------458 11.7.8 设置及清除格式标志(flags、setiosflags、resetiosflags)------459 11.8 流错误状态-----------------------------------------------------460 11.9 把输出流连到输入流上-------------------------------------------462 小结-----------------------------------------------------------------462 术语-----------------------------------------------------------------465 自测练习-------------------------------------------------------------467 自测练习答案---------------------------------------------------------469 练习-----------------------------------------------------------------471 第12章 模板-------------------------------------------------------------474 12.1 简介-----------------------------------------------------------474 12.2 函数模板-------------------------------------------------------474 12.3 重载模板函数---------------------------------------------------477 12.4 类模板---------------------------------------------------------477 12.5 类模板与非类型函数---------------------------------------------482 12.6 模板与继承-----------------------------------------------------483 12.7 模板与友元-----------------------------------------------------483 12.8 模板与static成员-----------------------------------------------484 小结 ---------------------------------------------------------------484 自测练习-------------------------------------------------------------485 自测练习答案---------------------------------------------------------486 练习 ---------------------------------------------------------------487 第13章 异常处理 --------------------------------------------------------489 13.1 简介-----------------------------------------------------------489 13.2 何时使用异常处理 ----------------------------------------------491 13.3 其它错误处理方法 ----------------------------------------------491 13.4 C++异常处理基础:try、throw、catch-----------------------------492 13.5 简单异常处理例子:除数为0 -------------------------------------492 13.6 抛出异常 ------------------------------------------------------494 13.7 捕获异常 ------------------------------------------------------495 13.8 再抛出异常 ----------------------------------------------------497 13.9 异常指定 ------------------------------------------------------499 13.10 处理意外异常 --------------------------------------------------499 13.11 堆栈解退 ------------------------------------------------------500 13.12 构造函数、析构函数与异常处理 ----------------------------------501 13.13 异常与继承 ----------------------------------------------------501 13.14 处理new故障 ---------------------------------------------------501 13.15 auto_ptr类与动态内存分配 --------------------------------------505 13.16 标准库异常层次 ------------------------------------------------506 小结 ----------------------------------------------------------------507 术语 ----------------------------------------------------------------509 自测练习 ------------------------------------------------------------510 自测练习答案 --------------------------------------------------------511 练习 ----------------------------------------------------------------511 第14章 文件处理 --------------------------------------------------------513 14.1 简介 ----------------------------------------------------------513 14.2 数据的层次 ----------------------------------------------------513 14.3 文件和流 ------------------------------------------------------515 14.4 建立顺序访问文件 ----------------------------------------------515 14.5 读取顺序访问文件中的数据 --------------------------------------519 14.7 随机访问文件 --------------------------------------------------524 14.8 建立承机访问文件 ----------------------------------------------525 14.9 向随机访问文件中随机地写入数据 --------------------------------527 14.10 从随机访问文件中顺序地读取数据 --------------------------------528 14.11 实例研究:事务处理程序 ----------------------------------------530 14.12 对象的输入/输出 -----------------------------------------------535 小结 ----------------------------------------------------------------535 术语 ----------------------------------------------------------------536 自测练习 ------------------------------------------------------------537 自测练习答案 --------------------------------------------------------538 练习 ----------------------------------------------------------------539