书籍详情

零点起飞学C++

零点起飞学C++

作者:秦广军 等编著

出版社:清华大学出版社

出版时间:2013-07-01

ISBN:9787302317371

定价:¥55.00

购买这本书可以去
内容简介
  本书结合大量示例和实战案例,由浅入深、循序渐进地介绍C++语言的相关知识,尤其对面向过程的程序设计到面向对象的程序设计做了重点介绍和必要辨析。本书特意提供了典型习题及教学PPT,以方便教学。另外,作者专门为本书录制了大量的配套教学视频,以帮助读者更好地学习本书内容。这些视频和书中的实例源代码一起收录于本书的配书光盘中。本书共分4篇,第1篇面向过程的C++编程,包括走进C++、数据类型、变量和常量、运算符、表达式和语句、指针的操作、复合数据类型、函数、输入/输出,以及面向过程的编程案例。第2篇介绍面向对象的C++编程,包括封装、命名空间和作用域、继承和派生、多态、模板,以及面向对象的编程案例。第3篇介绍C++的高级开发技术,包括string类、异常处理、内存管理、预处理、错误和调试。第4篇介绍C++的应用开发实战,包括两种类型的案例,即用链表模拟堆栈和图的遍历(数据结构型)、用WinSocket编写客户机/服务器模式的系统和自定义协议及其实现的方法(网络型)。本书适合C++入门与想提高编程的人员阅读,也可作为大中专院校C++程序设计课程的教材。另外,本书也可供C++语言爱好者和从业者作为实际工作中的参考书籍。
作者简介
  本书作者本书由秦广军主笔编写。其他参与编写的人员有毕梦飞、蔡成立、陈涛、陈晓莉、陈燕、崔栋栋、冯国良、高岱明、黄成、黄会、纪奎秀、江莹、靳华、李凌、李胜君、李雅娟、刘大林、刘惠萍、刘水珍、马月桂、闵智和、秦兰、汪文君、文龙、陈冠军、张昆。
目录
第1篇  面向过程的C++编程 第1章  走进C++( 教学视频:27分钟)  1.1  认识C++  1.1.1  C++的发展历程  1.1.2  C++的应用领域  1.2  C++开发环境的搭建  1.2.1  安装过程  1.2.2  开发环境介绍  1.3  认识第一个程序  1.4  小结  第2章  数据类型( 教学视频:38分钟)  2.1  数据的表示——数字运算型  2.1.1  表示整数的类型——整型  2.1.2  表示小数的类型——实型  2.1.3  浮点型  2.1.4  双精度型  2.2  是非问题——逻辑运算型  2.2.1 “并且”的运算——与运算  2.2.2 “或者”的运算——或运算  2.2.3 “No”的运算——非运算  2.2.4  逻辑运算的组合  2.3  文本的基础——字符型和字符串  2.3.1  单个字符的表示——字符型  2.3.2  多个字符的表示——字符串  2.3.3  字符与字符串的差异  2.4  复杂数据的表示——复合类型  2.5  小结  2.6  习题  第3章  数据的指代——变量和常量( 教学视频:50分钟)  3.1  指代可变的量——变量  3.1.1  变量是什么  3.1.2  多种多样的变量  3.1.3  变量的初始化  3.1.4  如何对变量命名  3.2  指代不变的量——常量  3.2.1  常量是什么  3.2.2  多种多样的常量  3.2.3  使用常量需要注意的问题  3.2.4  常量的初始化  3.2.5  如何对常量命名  3.3  小结  3.4  习题  第4章  数据运算的核心——运算符( 教学视频:48分钟)  4.1  加减乘除的运算——算术运算符  4.2  是是非非的运算——逻辑运算符  4.3  比较大小的运算——关系运算符  4.4  位运算  4.5  最基础的运算——赋值  4.6  运算符的优先级和结合性  4.6.1  优先级  4.6.2  结合性  4.7  小结  4.8  习题  第5章  运算的最小单位——表达式( 教学视频:46分钟)  5.1  使用表达式  5.1.1  表达式的种类  5.1.2  表达式到底是什么  5.1.3  如何写表达式  5.2  数据类型的转换  5.2.1  隐式转换  5.2.2  显式转换  5.3  小结  5.4  习题  第6章  程序的最小单位——语句( 教学视频:73分钟)  6.1  认识语句  6.1.1  单一语句——简单语句  6.1.2  多个语句——语句块  6.2  程序的执行顺序  6.3  因地制宜——选择型语句  6.3.1  如果…就…——if语句  6.3.2  多选一——switch语句  6.4  周而复始——循环型语句  6.4.1  只要…就…——while语句  6.4.2  如果…继续…——do…while语句  6.4.3  for语句  6.5  各种标志——标签语句  6.5.1  程序中的标志——普通标签语句  6.5.2  特殊标签语句  6.6  快捷通道——跳转语句  6.6.1  跳出来——break语句  6.6.2  continue语句  6.6.3  goto语句  6.7  语句嵌套  6.7.1  自增  6.7.2  自减  6.7.3  逗号语句  6.7.4  选择的简化版——?…:语句  6.8  小结  6.9  习题  第7章  指针( 教学视频:63分钟)  7.1  什么是地址  7.2  如何定义指针  7.2.1  指针的定义  7.2.2  向左向右分析指针  7.2.3  sizeof  7.3  指针的类型  7.4  初始化指针  7.4.1  用指针的地址进行初始化  7.4.2  用变量的地址进行初始化  7.4.3  用new分配的内存单元进行初始化  7.4.4  用malloc分配的内存单元进行初始化  7.5  指针的运算  7.5.1  算术运算  7.5.2  关系运算  7.6  指针嵌套——指针的指针  7.7  使用指针  7.7.1  给指针赋值  7.7.2  *操作符  7.8  指针与引用  7.9  特殊指针  7.9.1  void型指针  7.9.2  空指针  7.10  小结  7.11  习题  第8章  多数据的处理——复合类型( 教学视频:60分钟)  8.1  静态数组  8.1.1  指定维数完整  8.1.2  维数不全  8.1.3  无维数  8.2  动态数组  8.2.1  基于堆的动态数组  8.2.2  基于栈的动态数组  8.3  数据元素的存放  8.3.1  列优先存放  8.3.2  行优先存放  8.4  字符数组  8.4.1  定义和使用  8.4.2  字符数组和字符串  8.4.3  字符数组和字符串指针  8.5  初始化  8.5.1  定义时初始化  8.5.2  赋值初始化数组  8.6  指针与数组  8.6.1  指向数组的指针  8.6.2  指针数组  8.7  数组的使用  8.7.1  索引方式  8.7.2  指针方式  8.8  枚举  8.9  结构体  8.10  共用体  8.11  自定义类型  8.11.1  typedef的作用  8.11.2  定义自己的类型  8.12  小结  8.13  习题  第9章  通用语句块——函数( 教学视频:51分钟)  9.1  定义函数  9.1.1  定义方式  9.1.2  函数定义的示例  9.2  不同的函数  9.2.1  从返回值类型来划分  9.2.2  从作用域来划分  9.2.3  从C++类的成员函数特性来划分  9.3  函数通用的关键——参数  9.3.1  定义时候的参数——形参  9.3.2  调用时候的参数——实参  9.4  有借有还——函数返回值  9.4.1  返回值  9.4.2  返回表达式  9.5  调用函数  9.5.1  单独调用  9.5.2  函数表达式调用  9.5.3  嵌套调用  9.5.4  参数传递方式  9.6  自己调用自己——递归函数  9.7  函数指针  9.8  函数作为参数  9.9  main()函数分析  9.10  函数的规范编写  9.11  小结  9.12  习题  第10章  C++中的输入/输出( 教学视频:49分钟)  10.1  输入/输出库iostream  10.1.1  操作标准I/O  10.1.2  读写文件I/O  10.1.3  操作字符串I/O  10.2  输出流  10.2.1  输出预定义类型数据  10.2.2  输出自定义数据类型  10.3  输入流  10.3.1  输入预定义类型数据  10.3.2  输入自定义类型数据  10.4  格式化输入/输出  10.4.1  使用ios类成员函数进行格式化  10.4.2  使用操纵函数进行格式化控制  10.5  使用文件  10.5.1  打开/关闭文件  10.5.2  顺序读写文件  10.5.3  随机读写文件  10.6  小结  10.7  习题  第11章  面向过程的程序设计实战( 教学视频:52分钟)  11.1  问题定义  11.2  需求分析  11.3  总体设计  11.3.1  数据结构  11.3.2  图书基础数据维护模块  11.3.3  图书借阅模块  11.3.4  图书返还模块  11.3.5  会员基础数据维护模块  11.3.6  总体流程图  11.4  编码  11.4.1  主控文件bookmanager.cpp  11.4.2  菜单处理头文件mainfunction.h  11.4.3  数据结构头文件datainfo.h  11.4.4  功能函数头文件subfunction.h  11.4.5  菜单处理实现文件mainfunction.cpp  11.4.6  功能函数实现文件subfunction.cpp  11.5  小结  第2篇  面向对象的C++编程 第12章  面向对象( 教学视频:23分钟)  12.1  面向对象的概念  12.2  面向对象的程序设计  12.3  对象和类  12.4  面向对象的特征  12.4.1  封装  12.4.2  继承  12.4.3  多态  12.5  小结  12.6  习题  第13章  面向对象的本质——封装( 教学视频:55分钟)  13.1  构建类  13.1.1  声明类  13.1.2  构建属性  13.1.3  构建类的方法  13.1.4  使用构造函数  13.1.5  使用析构函数  13.1.6  可以共享的成员——静态成员  13.1.7  构建友元  13.1.8  访问修饰符  13.1.9  指向类成员的指针  13.1.10  类中定义的类——嵌套类  13.1.11  类文件的组织  13.2  类的具体表现——对象  13.2.1  定义对象  13.2.2  使用对象  13.2.3  指向自身的指针——this指针  13.3  小结  13.4  习题  第14章  命名空间和作用域( 教学视频:21分钟)  14.1  为什么使用命名空间  14.2  定义命名空间  14.3  如何使用命名空间  14.4  作用域  14.4.1  什么叫作用域  14.4.2  作用域的分类  14.5  小结  14.6  习题  第15章  继承和派生( 教学视频:62分钟)  15.1  继承和派生的关系  15.2  派生一个类  15.2.1  派生的起点——基类  15.2.2  派生的方式  15.2.3  使用构造函数  15.2.4  使用析构函数  15.2.5  同名方法的使用  15.2.6  同名属性的使用  15.3  单重继承  15.4  多重继承  15.4.1  为什么要多重继承  15.4.2  构造多重继承  15.4.3  析构函数和构造函数  15.4.4  多重继承的二义性  15.5  虚继承与虚基类  15.5.1  什么是虚基承  15.5.2  初始化虚基类  15.5.3  集成虚基类  15.6  继承中的限制  15.7  小结  15.8  习题  第16章  灵活的代码——多态( 教学视频:54分钟)  16.1  什么是多态  16.2  宏多态  16.3  虚函数  16.3.1  虚函数的作用  16.3.2  静态绑定  16.3.3  动态绑定  16.3.4  纯虚函数  16.4  抽象类  16.4.1  什么是抽象类  16.4.2  抽象类的派生  16.5  运算符的多态——运算符重载  16.5.1  为什么要重载运算符  16.5.2  重载的限制  16.5.3  重载一元运算符  16.5.4  重载二元运算符  16.6  函数重载  16.6.1  参数类型不同  16.6.2  参数个数不同  16.7  流的重载  16.7.1  流插入的重载  16.7.2  流提取的重载  16.8  覆盖  16.8.1  覆盖函数  16.8.2  覆盖变量  16.9  小结  16.10  习题  第17章  模板( 教学视频:25分钟)  17.1  什么是模板  17.2  类模板  17.2.1  定义类模板  17.2.2  使用类模板  17.2.3  类模板和模板类的区别  17.3  函数模板  17.3.1  定义函数模板  17.3.2  使用函数模板  17.3.3  函数模板和模板函数的区别  17.4  模板的实例化  17.5  模板的作用  17.6  基于模板的元编程  17.6.1  什么是元编程  17.6.2  基于模板的元编程  17.7  小结  17.8  习题  第18章  面向对象实战( 教学视频:18分钟)  18.1  问题定义  18.2  需求分析  18.3  面向对象分析与设计  18.3.1  类结构的设计  18.3.2  类的可见性  18.3.3  类的结构图  18.4  编码和测试  18.4.1  预编译头文件Stdafx.h  18.4.2  CCNTime类的头文件Cntime.h  18.4.3  CCNTime类的实现文件Cntime.cpp  18.4.4  主文件main.cpp  18.5  小结  第3篇  C++高级开发技术 第19章  文本处理—— string类( 教学视频:13分钟)  19.1  定义字符串  19.2  string类的常用方法  19.3  string类的运算  19.3.1  查找字符串  19.3.2  替换字符串  19.3.3  取子字符串  19.3.4  比较字符串  19.3.5  连接字符串  19.3.6  插入字符串  19.3.7  获取字符串大小和容量  19.4  小结  19.5  习题  第20章  不让程序出错——异常处理( 教学视频:16分钟)  20.1  异常处理机制  20.2  抛出异常  20.3  捕获异常  20.4  什么是异常处理的规格  20.5  常见的标准异常  20.6  小结  20.7  习题  第21章  内存管理( 教学视频:21分钟)  21.1  内存的分类  21.2  管理栈内存  21.2.1  申请栈内存  21.2.2  使用栈内存  21.2.3  释放栈内存  21.2.4  获取栈内存  21.3  管理堆内存  21.3.1  申请堆内存  21.3.2  使用堆内存  21.3.3  释放堆内存  21.3.4  改变大小  21.4  小结  21.5  习题  第22章  预处理( 教学视频:21分钟)  22.1  什么是预处理  22.2  常见的预处理  22.2.1  文件包含#include  22.2.2  布局控制#pragma  22.2.3  宏替换#define  22.2.4  条件编译  22.3  其他预处理指令  22.4  小结  22.5  习题  第23章  错误与调试( 教学视频:46分钟)  23.1  什么是错误  23.2  错误的种类  23.2.1  语法错误  23.2.2  链接错误  23.2.3  运行时错误  23.3  排查错误  23.3.1  看懂错误信息  23.3.2  错误发现的常见方法  23.3.3  如何调试  23.4  常见bug的分类  23.5  调试的窍门  23.5.1  使用断言assert  23.5.2  使用断言verify  23.5.3  assert 和 verify的差异  23.5.4  轨迹跟踪  23.5.5  使用断点  23.6  使用交互式调试  23.6.1  设置和删除断点  23.6.2  使用Debug窗口  23.6.3  使用Watch面板  23.6.4  使用步进方式调试  23.7  小结  23.8  习题  第4篇  应用开发实战 第24章  数据结构应用实战( 教学视频:23分钟)  24.1  采用链表模拟堆栈  24.1.1  链栈类的定义文件LinkStack.h  24.1.2  链栈类的实现文件LinkStack.cpp  24.1.3  链栈类的使用文件test24_1.cpp  24.2  遍历图  24.2.1  存储/遍历图  24.2.2  图遍历的代码  24.3  小结  第25章  网络应用案例( 教学视频:33分钟)  25.1  客户机/服务器通信  25.1.1  WinSocket 2常用函数  25.1.2  服务器/客户机编程模式  25.1.3  服务器和客户端公用文件  25.1.4  服务器端实现  25.1.5  客户端实现  25.2  自定义协议  25.2.1  自定义协议  25.2.2  自定义协议的实现  25.3  小结   
猜您喜欢

读书导航