下载  >  开发技术  >  C++  > C++ Primer Plus中文版(第六版)

C++ Primer Plus中文版(第六版) 评分:

C++ primer Plus 中文版(中文版)是C++程序员学习和手册翻阅必不可少的书籍。
内容提要 C++是在C语言基础上开发的一种集面向对象编程、泛型编程和过程化编程于一体的 编程语言,是C语言的超集。本书是根据2003年的 ISOANSI C艹标准编写的,通过大量 短小精悍的程序详细而全面地阐述了C++的基本概念和技术,并专辟一章介绍了C++11新 增的功能。 全书分18章和10个附录。分别介绍了C++程序的运行方式、基本数据类型、复合数 据类型、循环和关系表达式、分支语句和逻辑运算符、函数重载和函数模板、内存模型和 名称空间、类的设计和使用、多态、虚函数、动态内存分配、继承、代码重用、友元、异 常处理技术、 string类和标准模板库、输入输出、C++11新增功能等内容。 本书针对C++初学者,书中从C语言基础知识开始介绍,然后在此基础上详细阐述C++ 新增的特性,因此不要求读者有C语言方面的背景知识。本书可作为高等院校教授C++课 程的教材,也可供初学者自学C++时使用 作者简介 Stephen Prata在美国加州肯特菲尔得的马林学院教授天文、物理和计算机科学。他毕业 于加州理工学院,在美国加州大学伯克利分校获得博士学位。他单独或与他人合作编写的 编程图书有十多本,其中《 New C Primer plus》获得了计算机出版联合会1990年度最佳 How-to”计算机图书奖,《C++ Primer plus》获得了计算机出版联合会1991年度最佳 “How-tn计算机图书奖提名 前言 学习C艹+是一次探索之旅,因为这种语言容纳了好儿种编程范式,其中包括面向对象编程、泛型编程 和传统的过程化编程。本书第5版是基于1SOC+标准编写的,该标准的官方名称为C+99和C++03 (C++99C++03),其中2003标准主要是对1999标准的技术修正,并没有添加任何新功能。C艹在不断发 展,编写本节时,新标准获得了C+国际标准委员会的批准。在制定期间,该标准名为C++0x,但现已改 名为C++11。大多数编译器都能很好地支持C++9903,而本书的大多数示例都遵守该标准。有些实现中已 显现了新标准的很多功能,而本书也对这些新功能进行了探索。 本书在介绍C++特性的同时,讨论了基本C语言,使两者成为有机的整体。书中介绍了C++的基本概 念,并通过短小精悍的程序来阐明,这些程序都很容易复制和试验。书中还介绍了输入和输出,如何让程 序执行重复性任务,如何让程序做出选择,处理数据的多种方式,以及如何使用函数等内容。另外,本书 还讲述了C++在C语言的基础上新增的很多特性,包括 ●类和对象 ●继承 ●多态、虚函数和RTT(运行阶段类型识别) 函数重我 引用变量; 泛型(独立于类型的)编程,这种技术是由模板和标准模板库(STL)提供的 ●处理错误条件的异常机制; 管理函数、类和变量名的名称空间 初级教程方法 大约20年前,《 C Primer plus》开创了优良的初级教程传统,本书建立在这样的基础之上,吸收了其 中很多成功的理念。 初级教程应当是友好的、便于使用的指南 ●初级教程不要求您已经熟悉相关的编程概念。 ●初级教程强调的是动手学习,通过简短、容易输入的示例阐述一两个概念 初级教程用示意图来解释概念 初级教程提供问题和练习来检验您对知识的理解,从而适于自学或课堂教学 基于上述理念,本书帮助您理解这种用途广泛的语言,并学习如何使用它。 对何时使用某些特性,例如何时使用公共继承来建立is-a关系,提供了概念方面的指导 阐释了常用的C++编程理念和技术。 提供了大量的附注,如提示、警告、注意等。 本书的作者和编辑尽最大的努力使本书简单、明了、生动有趣。我们的目标是,您阅读本书后,能够 编写出可靠、高效的程序,并且觉得这是一种享受 示例代码 本书包含大量的示例代码,其中大部分是完整的程序。和前一版一样,本书介绍的是通用C++,因此 适用于任何计算机、操作系统和编译器。书中的示例在 Windows7系统、 Macintosh os x系统和 Linux系 统上进行了测试。 使用了C+l功能的程序要求编译器支持这些功能,但其他程序可在遵循C++9903的任何系统上运行。 C++ Primer Plus(第6版)中文版 书中完整程序的源代码可从配套网站下载,详情诮参阅封底的链接信息 本书内容 本书分为18章和10个附录。 第1章预备知识:本章介绍 Bjame Stroustrup如何通过在C语言的基础上添加对面向对象编程 的支持,来创造C+编程语言。讨论面向过程语言《如C语言)与而向对象语言(如C++)之间的区别。 您将了解 ANSVISO在制定C++标准方面所做的工作。木章还讨论了创建C++程序的技巧,介绍了当前几 种C艹编译器使用的方法。最后,本章介绍了本书的一些约定。 第2章开始学习C++:本章介绍创建简单C++程序的步骤。您可以学习到main()函数扮演的角 色以及C++程序使用的一些语句。您将使用预定义的cout和cin对象来实现程序输出和输入,学习如何创 建和使用变量。最后,本章还将介绍函数—C++的编程模块 ●第3章处理数据:C++提供了内置类型来存储两种数据:数(没有小数的数字)和浮点数(带 小数的数字)。为满足程序员的各种需求,C++为每一种数据都提供了儿个类型。本章将要讨论这些类型 包括创建变量和编写各种类型的常量。另外,还将讨论C++是如何处理不同类型之间的隐式和显式转换的。 ●第4章复合类型:C++让程序员能够使用基本的内置类型来创建更复杂的类型。最高级的形式 是类,这将在第9章~第13章讨论。本章讨论其他形式,包括数组(存储多个同类型的值)、结构(存储 多个不同类型的值)、指针(标识内存位置)。您还将学习如何创建和存储文本字符串及如何使用C-风格字 符数组和C++ string类来处理文本输入和输出。最后,还将学习C++处理内存分配的一些方法,其中包括 用于显式地管理内存的new和 delete运算符。 第5章循环和关系表达式:程序经常需要执行重复性操作,为此C++提供了3种循环结构:for 循环、 while循环和 do while循环。这些循坏必须知道何时终止,C++的关系运算符使程序员能够创建测试 来引导循环。本章还将介绍如何创建逐字符地读取和处理输入的循环。最后,您将学习如何创建二维数组 以及如何使用嵌套循环来处理它们。 ·第6章分攴语句和逻辑运算符:如果程序可以根据实际情况调整执行,我们就说程序能够智能 地行动。在本章,您将了解到如何使用if、 if else和 switch语句及条件运算符来控制程序流程,学习如何 使用逻辑运算符来表达决策测试。另外,本章还将介绍确定字符关系(如测试字符是数字还是非打印字符) 的函数库 ectype。最后,还将简要地介绍文件输入输出 ●第7章函数—C++的编程模块:函数是C++的基本编程部件。本章重太介绍C++函数与C函 数共同的特性。具体地说,您将复习函数定义的通用格式,了解函数原型是如何提高程序可靠性的。同时, 还将学习如何编写函数来处理数组、字符串和结构。还要学习有关递归的知识(即函数在什么情况下调用 自身)以及如何用它来实现分而治之的策略。最后将介绍函数指针,它使程序员能够通过函数参数来命令 函数使用另一个函数。 第8章函数探幽:本章将探索C++中函数新增的特性。您将学习内联函数,它可以提高程序的 执行速度,但会增加程序的长度;还将使用引用变量,它们提供了另一种将信息传递给函数的方式。默认 参数使函数能够自动为函数调用中省略的函数参数提供值。函数重载使程序员能够创建多个参数列表不同 的同名函数。类设计中经常使用这些特性。另外,您还将学习函数模板,它们使程序员能够指定相关函数 族的设计 ●第9章内存模型和名称空间:本章讨论如何创建多文件程序,介绍分配内存的各种方式、管理 内存的各种方式以及作用域、链按、名称空间,这些内容决定了变量在程序的哪些部分是可见的 ●第10章对象和类:类是用户定义的类型,对象(如变量)是类的实例。本章介绍面向对象编程 和类设计。对象声明描述的是存储在对象中的信息以及可对对象执行的操作(类方法)。村象的某些组成部 分对于外界来说是可见的〔公有部分),而某些部分却是隐藏的(私有部分)。特殊的类方法(构造函数和 析构函数)在对象创建和释放时发挥作用。在本章中,您将学习所有这些内容以及其他类知识,了解如何 使用类来实现ADT,如栈。 第11章使用类:在本章中,您将深入了解类。首先了解运算符重载,它使程序员能够定义与类 前言 对象一起使用的运算符,如+。还将学习友元函数,这些函数可以访问外部世界不可访问的类数据。同时 还将了解一些构造函数和重载运算符成员函数是如何被用来管理类类型转换的。 第12章类和动态内存分配:一般来说,让类成员指向动态分配的内存很有用。如果程序员在类 构造函数中使用aew来分配动态内存,就有责任提供适当的析构函数,定义显式拷贝构造函数和显式赋值 运算符。木章介绍了在程序员没有提供显式定义时,将如何隐式地生成成员函数以及这些成员函数的行为。 您还将通过使用对象指针,了解队列模拟问题,扩充类方面的知识。 第13章类继承:在面向对象编程中,继承是功能最强大的特性之一,通过继承,派生类可以继 承基类的特性,可重用基类代码。本章讨论公有继承,这种继承模拟了is-a关系,即派生对象是基对象的 特例。例如,物理学家是科学家的特例。有些继承关系是多态的,这意味着相同的方法名称可能导致依赖 于对象类型的行为。要实现这种行为,需要使用一种新的成员函数—虚函数。有时,使用抽象基类是实 现继承关系的最佳方式。本章讨论了这些问题,说明了公有继承在什么情况下合适,在什么情况下不合适。 ●第14章C++中的代码重用:公有继承只是代码重用的方式之一。本章将介绍其他几种方式。如 果一个类包含了另一个类的对象,则称为包含。包含可以用来模拟has-a关系,其中一个类包含另一个类 的对象。例如,汽车有马达。也可以使用私有继承和保护继承来模拟这种关系。本章说明了各种方法之间 的区别。同时,您还将学习类模板,它让程序员能够使用泛型定义类,然后使用模板根据具体类型创建特 定的类。例如,栈模板使程序员能够创建整数栈或字符串栈。最后,本章还将介绍多重公有继承,使用这 种方式,一个类可以从多个类派生而来。 第15章友元、异常和其他:本章扩展了村友元的讨论,讨论了友元类和友元成员函数。然后从 异常开始介绍了C++的儿项新特性。异常为处理程序异常提供了一种机制,如函数参数值不正确或内存耗 尽等。您还将学习RTTI,这种机制用来确定对象类型。最后,本章还将介绍一种更安全的方法来替代不受 限制的强制类型转换。 第16章 strng类和标准模板库:本章讨论C++语言中新增的一些类库。对于传统的C风格字符 中来说, string类是一种方便且功能强大的替代方式。 auto ptr类帮助管理动态分配的内存。STL提供了几 种类容器(包括数组、队列、链表、集合和映射)的模板表示。它还提供了高效的泛型算法库,这些算法 可用于STL容器,也可用于常规数组。模板类 valarray为数值数组提供了攴持。 ●第1章输入、输出和文件:本章复习C艹IO,并讨论如何格式化输出。您将要学习如何使用 类方法来确定输入或输出流的状态,了解输入类型是否匹配或是否检测到了文件尾。C+使用继承来派生 用于管理文件输入和输出的类。您将学习如何打开文件,以进行输入和输出,如何在文件中迫加数据,如 何使用二进制文件,如何获得对文件的随机访问权。最后,还将学习如何使用标准的1O方法来读取和写 入字符出 第18章探讨C++新标准:本章首先复习之前介绍过的几项C++11新功能,包括新类型、统 的初始化语法、自动类型推断、新的智能指针以及作用域内枚举。然后,讨论新增的右值引用类型以及如 何使用它来实现移动语义。接下来,介绍了新增的类功能、1 ambda表达式和可变参数模板。最后,概述了 众多其他的新功能。 附录A计数系统:本附录讨论八进制数、十六进制数和二进制数 附录BC++保留字:本附录列出了C++关键字 附录 C ASCII字符集:本附录列出了AsC]字符集及其十进制、八进制、十六进制和二进制 表 附录D运算符优先级:本附录按优先级从高到低的顺序列出了C++的运算符。 附录E其他运算符:本附欢总结了正文中没有介绍的其他C++运算符,如按位运算符等 附录F模板类 string:本附录总结了srng类方法和函数。 ●附录G标准模板库方法和函数:本附录总结了STL容器方法和通用的STL算法函数 附录H精选读物和网上资源:本附录列出一些参考书,帮助您深入了解C++。 ·附录1转换为ISO标准C++:本附录提供了从C和老式C+实现到标准C++的转换指南。 附录』复习题答案:本附录提供各章结尾的复习题的答案 C++ Primer plus(第6版)中文版 对教师的提示 本书宗旨之一是,提供一本既可用于自学又可用于教学的书籍。下雨是本书在支持教学方面的一些特征。 本书介绍的是通用C++,不依赖于特定实现 本书内容跟踪了 SO/ANSIC十标准委员会的工作,并讨论了模板、STL、 string类、异常、RTT 和名称空间。 本书不要求学生了解C语言,但如果有一定的编程经验则更好。 本书内容经过了精心安排,前几章可以作为对C预备知识的复习一带而过 各章都有复习题和编程练习。附录」提供了复习题的答案。 本书介绍的一些主题很适于计算机科学课程,包括抽象数据类型(ADT)、栈、队列、简单链表 模拟、泛型编程以及使用递归来实现分而治之的策晔 各章都非常简短,用一周甚至更短的时间就可以学完。 本书讨论了何时使用具体的特性以及如何使用它们。例如,把is-a关系的公有继承同组合、has-a 关系的私有继承联系起来,讨论了何时应使用虚函数以及何时不应使用 本书约定 为区别不同类型的文本,我们使用了一些印刷上的约定 ●代码行、命令、语句、变量、文件名和程序输出使用 counter new字体: Include <iostream> int maini) using namespace std cout < what s up, Doc! \nn return o 用户需要输入的程序输入用粗体表示 Please enter your name: plato 语法描述中的占位符用斜体表示。您应使用实际的文件名、参数等替换占位符。 新术语用斜体表示a 旁注:提供更深入的讨论和额外的背景知识,帮助阐明主题 提示:提供特定编程情形下很有帮助的简单指南。 警告:指出潜在的陷阱。 注意:提供不属于其他类别的各种说明。 开发本书编程示例时使用的系统 本书的C++]1示例是使用 Microsoft Visual C++2010和带Gmug++450的 Cygwin开发的,它们都运 行在64位的 Windows7系统上。其他示例在这些系统上进行了测试,还在OsX1068系统和 Ubuntu linux 系统上分别使用g++421和g+441进行了测试。大多数非C++11示例最初都是在 Windows Xp Professional系统上使用 Microsoft visual c++2003和 Metrowerks Code Warrior Development Studio9开发的 并在该系统上使用 Borland C++55命令行编译器和 GNU gpp33.3进行了测试:其次,在运行SuSE90Lnux 的系统上使用 Comeau433和GNUg+331进行了测试:最后,在运行Os10.3的 Macintosh G4上使用 Metrowerks Development Studio9进行了测试 C+为程序员提供了丰富多彩的内容。祝您学习愉快! 目录 第1章预备知识 2.7编程练习 第3章处理数据 37 1.C++简介 12C++简史 3.1简单变量… 37 1.2.]C语言……… 31.变量名……………………… 38 122C语言编程原理… 312整型 39 12.3面向对象编程………… 33整型 short,int、long和 124C+和泛型编程…… longlong 39 125C++的起源 中曹血中中中中甲甲甲唱 314无符号类型………… 13可移植性和标准 3]5选择整型类型…………………45 13IC+的发展……………………6 31.6整型字面值…… s45 13.2本书遵循的C艹+标准…………6 37C++如何确定常量的类型…………47 14程序创建的技巧 38char类型:字符和小整数 4 1.4.1创建源代码文件… 3.19 类型 上p即即即 53 1.4.2编译和链接………… 3,2 const限定符 54 1.5总结 10 33浮点数… 55 3.3.书写浮点数…………… 第2章开始学习C十+… 2 33,2浮点类型 56 2.1进入C++…………… 333浮点常量… 8 21main()函数………………l3 334浮点数的优缺点… 2.12C++注释…………… 34C++算术运算符……19 213C++预处理器和 Iostream文件……16 341运算符优先级和结合性 .URaD 60 214头文件名……………………16 342除法分支 21.5名称空问 --+17 34.3求模运算符………………61 21.6使用cout进行C++输出 18 344类型转换 21.7C++源代码的格式化 19 345C++11中的auto声明… 22C+语句… 3.5总结 221声明语句和变量… 21 36复习题……………… 67 222赋值语句 22 3.7编程练习 68 223cout的新花样 第4章复合类型 …70 23其他C+语句…… 231使用cin 24 4.1数组…………………………… 232使用cout进行拼接… 24 4.1.1程序说明 72 233类筒介 4]2数组的初始化规则 24函数 26 413C++11数组初始化方法 24.l使用有返回值的函数 P血聊品日血导 26 4.2字符邮………… ■■■口国国国■■国■ 74 242函数变体 …s"29 4.2.1拼接字符串常量………………75 243用户定义的函数………………29 422在数组中使用字符串……………76 244用户定义的有返回值的函数…32 423字符串输入… 77 245在多函数程序中使用 424每次读取一行字符串输入……78 usng编译指令………………33 4.25混合输入字符串和数字 25总结… 34 43 stnng类简介 26复习题 35 4.3.1C+11字符串初始化…………83 C++ Primer plus(第6版)中文版 43.2赋值、拼接和附加 51.6副作用和顺序点 134 433 string类的其他操作… 51.7前缀格式和后级格式…………135 4.3.4 string 类 E/O……… 86 51.8遂增递减运算符和指针 4.3.5其他形式的字符串字面值 51.9组合赋值运算符…………136 4.4结构简介 88 5L.10复合语句(语句块〕 …136 44.l在程序中使用结构…………………89 5.l其他语法技巧 442C++11结构初始化 退号运算符… L38 443结构可以将 string类 5.2关系表达式… 140 作为成员吗………………… 51.3赋值、比较和可能犯的错误…14 444其他结构属性 5.1.|4C风格字符串的比较 142 44.5结构数组………………… 93 5.5比较 string类字符串………]44 446结构中的位字段 94 52whie循环 145 4.5共用体 52!for与 while 147 4.6枚桦…… 95 522等待一段时间:编写延时循环…148 4.6.1设置枚举量的值……97 53 do while循环 4.62枚举的取值范围…97 54基于范围的for环(C++1l) 152 4.7指针和自由存储空间……………………97 55循环和文本输入……………………152 4.7.1声明和初始化指针…………100 55.1使用原始的cin进行输入……152 4.7.2指针的危险……………………]01 552使用 cIn.get(char)进行补救……153 4.73指针和数字…………102 553使用哪一↑ cin.get()…154 4.74使用new来分配内存…………102 554文件尾条件 …155 4.7.5使用 delete释放内存 104 555另一个 cin gett()版本 157 47.6使用new来创建动态数组 56嵌套循环和二维数组 159 4.8指针、数组和指针算术……………106 5.6.1初始化二维数组……………160 4.8l程序说明…… 562使用二维数组 60 482指针小结 109 57总结… 4.83指针和字符串… 58复习题 484使用nw创建动态结构………114 5.9编程练习 485自动存储、静态存储和 动态存储……… ……l|7 第6章分支语句和逻辑运算符 49类型组合……………………………118 6.订语句……165 4.10数组的替代品… 20 6.1.1 ifelse语句 167 4.10.1模板类 vector…………120 6.1.2格式化 if clse语句……………168 4.102模板类aay〔C++11)……120 61.3 if else if eise结构…………169 4.103比较数组、 vector对象和 62逻辑表达式……………,…………170 aray对象………………120 62.1逻辑OR运算符 171 4.1总结 122 62.2逻辑AND运算符:&&……172 4.12复习题 623用&&来设置取值范围………174 4.13编程练习 624逻辑NOT运算符 175 第5章循环和关系表达式…………125 625逻辑运算符细节… 176 626其他表示方式 5.]for循环 25 6.3字符函数库cype …177 5.1.1for循环的组成部分…………126 64?运算符 179 512回到for循环 13 65 switch语句 513修改步长 65将枚举量用作标签 18 514使用for循环访问字符串 652 switch和 if elst 184 5.1.5递增运算符(++) 66 break和 continue语句…… 185 和递减运算符(-)… …133 67读耿数字的循环 87

...展开详情
2018-05-18 上传 大小:46.63MB
举报 收藏
分享
C++ Primer Plus(第6版)_中文版_带书签_超清.pdf

高清版本,本人也正在看,非常清晰..

立即下载
C++ Primer Plus 第六版(高清 pdf)

C++ Primer Plus 第六版(高清 pdf)

立即下载
C++Primer Plus 第六版 中文版 252M 高清版

资源加压后是252M,高清版。找了很久才找到的,有必要共享出来。享誉C++“圣经”的著作。由浅入深,面面俱到!

立即下载
C++ Primer Plus 第六版 中文

C Primer Plus 第六版 中文版 带目录,可以用于Kindle等设备阅读。

立即下载
C++ Primer plus 第六版 中文版

自己学习用的,有书签的中文版C++ Primer plus,本人是新手,如果连接有问题请联系

立即下载
c++ primer plus

本书是英文版的c++ primer plus文字版的书,主要用于英文比较好的同学再编程入门时使用

立即下载
C++ Primer Plus(第6版)中文版_带书签_超清

本书是C++语言常年来的经典入门书籍。C++是在C语言基础上开发的一种集面向对象编程、通用编程和传统的过程化编程于一体的编程语言,是C语言的超集。本书通过大量短小精悍的程序详细而全面地阐述了C++的基本概念和技术。

立即下载
C++ Primer Plus 第6版 中文版

分别介绍了C++程序的运行方式、基本数据类型、复合数据类型、循环和关系表达式、分支语句和逻辑运算符、函数重载和函数模板、内存模式和名称空间等内容。

立即下载
C++ Primer Plus(第6版)中文版 高清扫描版

C++ Primer Plus(第6版)中文版(畅销30年C++必读经典教程全新升级,蔡学镛、孟岩、高博倾力推荐) 畅销20余年的C++编程入门教程 近百万程序员的C++编程启蒙教程 技术大牛案头常备的工具书 针对C++11标准库更新 蔡学镛 孟岩 高博倾力推荐 作者:[美]Stephen Prata 著出版社:人民邮电出版社出版时间:2012年07月

立即下载
C++ Primer Plus(第6版)中文版 可复制 非扫描版

C++ Primer Plus(第6版)中文版 可复制 非扫描版,很好的入门学习

立即下载