具体描述
内容简介
本书介绍C++的语法和OOP的基本概念,并讨论了利用C++语言提供的机制编写面向对
象程序的方法。在书中,不仅比较了C与C十十之间的细微差别,更着重介绍C十十提供的面向对象
机制:类、派生类、虚函数、运算符重载等等,尤其是C++高版本中新增的模板和异常。书中用大量
例子来说明这些概念的使用,并在每章之后附有习题以备读者练习。在学习本书之前,读者应至少
已掌握了一门程序设计语言。
本书既可以作为学习C++语言的教材,也可作为面向对象技术的入门资料。
作者简介
目录信息
第1章 绪 论
1.1C十十程序设计语言概述
1.2C十十简短的历史
第2章 C十十程序的结构
2.1C十十应用程序的结构
2.2简单的C十十程序
2.3C十十源程序的执行
第3章 数据 和运算
3.1标识符
3.2基本对象和基本类型
3.2.1基本运算对象
3.2.2基本数据类型
3.2.3变量声明与赋值
3.3常量
3.3.1整型常量
3.3.2浮点常量
3.3.3字符常量
3.3.4串常量
3.4导出类型
3.4.1指针
3.4.2引用
3.4.3数组
3.4.4函数
3.5运算符
3.5.1运算符列表
3.5.2算术运算符与赋值运算符
3.5.3关系运算符和逻辑运算符
3.5.4增量和减量运算符
3.5.5位逻辑运算符
3.5.6条件运算符和逗号运算符
3.5.7其他运算符
3.5.8算术运算中的类型转换
3.5.9表达式
第4章 流程控制、函数和文件
4.1流程控制语句
4.1.1流程控制语句列表
4.1.2条件语句
4.1.3循环语句
4.1.4跳转语句
4.2函数和文件
4.2.1作用域
4.2.2存储分类符
4.2.3函数的参数传递
4.2.4函数参数
4.3内联、重载和引用
4.3.1宏和内联
4.3.2重载函数
4.3.3函数、引用和常量
第5章 指针和自定义数据类型
5.1指针及其运算
5.1.1指针
5.1.2指针的算术运算
5.1.3指针的关系运算
5.1.4指针的赋值运算
5.2指针和数组
5.2.1指针与数组的关系
5.2.2字符指针与字符数组
5.2.3指针数组
5.2.4指针的指针
5.3指针和函数
5.3.1指针函数
5.3.2函数指针
5.4指针、引用、常量和复杂类型
5.4.1指针与常量
5.4.2指针和引用
5.4.3复杂类型的识别
5.5结构、联合和用户自定义类型
5.5.1结构的定义和声明
5.5.2对结构的操作
5.5.3结构、指针和数组
5.5.4位段
5.5.5联合
5.5.6枚举
5.5.7类型定义typedef
5.6结构与函数
5.6.1结构用作函数参数和返回值
5.6.2成员函数
第6章 类
6.1类的引入
6.2类定义
6.3构造函数和析构函数
6.4类成员
6.4.1this指针
6.4.2成员对象和成员对象指针
6.4.3静态类成员
6.4.4常量类成员
6.5友员、嵌套类和结构
6.5.1友员
6.5.2嵌套类
6.5.3结构和联合
6.6对象、指针和数组
6.6.1对象数组
6.6.2指向数据成员的指针
6.6.3指向成员函数的指针
6.6.4成员指针数组
6.7一个完整的类
第7章 派生类
7.1派生类
7.2访问基类中的成员
7.3虚函数
7.3.1基类指针和派生类指针
7.3.2类型域
7.3.3虚函数
7.3.4使用虚函数
7.3.5与虚函数有关的特征
7.4多继承
7.5重复继承和共享继承
7.5.1重复继承
7.5.2虚基类
7.5.3部分共享继承
7.5.4复杂继承中的构造函数和析构函数
第8章 运算符重载
8.1运算符重载
8.2算术运算符、赋值运算符和逻辑运算符的重载
8.2.1重载算术运算符
8.2.2重载赋值运算符
8.2.3复制构造函数
8.2.4重载逻辑运算符
8.3用户定义的转换
8.3.1转换构造函数
8.3.2转换运算符
8.3.3二义性
8.4复数类
8.5重载增量和减量运算符
8.6重载下标运算符
8.7重载函数调用运算符
8.8递引用运算符的重载
8.9new和delete运算符的重载
第9章 模板
9.1模板
9.2使用类模板
9.3函数模板
9.4模板参数、特殊版本的模板、模板友员
9.4.1模板参数
9.4.2特殊版本的模板
9.4.3模板中的友员和静态成员
9.5使用函数模板
9.5.1利用派生添加操作
9.5.2用函数参数来传递操作
9.5.3隐式地传递操作
9.5.4用类模板参数添加操作
9.6用模板实现关联数组
第10章 异常处理
10.1用异常来处理错误
10.2多个异常
10.2.1处理多个异常
10.2.2用枚举组织异常
10.2.3用派生类组织异常
10.2.4利用虚函数来组织异常
10.2.5再次抛出异常
10.2.6用多继承来组织异常
10.2.7用模板组织异常
10.3异常的接口说明
10.3.1异常接口说明的形式
10.3.2unexpected()函数
10.4资源分配时的异常
10.5异常与错误
第11章 流
11.1输出流和输入流
11.1.1输出流
11.1.2输入流
11.1.3类型安全的流
11.1.4重载插入/析取运算符
11.2格式化输入/输出
11.2.1宽度控制
11.2.2格式状态
11.3控制符
11.3.1预定义控制符
11.3.2用户定义的无参控制符
11.3.3用户定义的带参控制符
11.3.4用模板来定义带参控制符
11.4其它的输入输出函数
11.4.1错误处理
11.4.2几个控制输入输出的函数
11.4.3二进制输入输出流
11.5文件和流
11.5.1打开文件
11.5.2按正文方式读入文件
11.5.3按二进制方式读/写文件
11.5.4使用read()和Write()函数
11.5.5使用文件指针
11.6字符串流
11.6.1ostrstream类流
11.6.2istrstream流
11.7streambuf流类
附录A 语法汇总
附录B 兼容性小结
附录C 常用库函数小结
附录D 流库
· · · · · · (收起)
读后感
用户评价
我一直认为,学习一门编程语言,就像学习一门新的语言一样,需要先掌握其基础的词汇和语法,然后才能逐步深入到其表达方式和文化内涵。C++作为一门功能强大但又极其复杂的语言,其“教程”的编写质量至关重要。这本书的名称“C++程序设计语言教程”给我一种非常直接和专业的感觉。我期望它能系统地介绍C++的各个方面,从最基本的变量、数据类型、运算符,到复杂的面向对象特性、模板、异常处理,乃至更高级的内存管理和并发编程。我特别关注的是,这本书是否能够清晰地解释“为什么”要这样做,而不仅仅是“怎么做”。例如,在讲到指针的时候,是否能深入剖析其底层原理,让读者真正理解内存地址和数据的关系;在讲到面向对象的时候,是否能解释清楚封装、继承、多态的实际好处和应用场景。我希望这本书能够成为我理解C++的“敲门砖”,帮助我建立起对这门语言的深刻认知。
对于我这样一个在编程世界里摸索了几年,但对C++总感觉隔靴搔痒的学习者来说,一本能够真正帮助我“打通任督二脉”的C++教材是极其宝贵的。这本书的书名,言简意赅,却饱含了我寻找已久的信息——“C++程序设计语言教程”。我一直在寻找的,不仅仅是代码的堆砌,而是能够引导我理解C++的设计哲学和底层机制的书籍。我希望它能带我深入理解C++的内存模型,理解动态内存分配的原理,以及如何有效地管理资源,避免内存泄漏。同时,我也对STL(标准模板库)的讲解充满期待,我希望能够了解各种容器(如vector, list, map)的内部实现和性能特点,以及如何高效地利用算法库来解决实际问题。这本书如果能够做到,不仅能让我掌握C++的语法,更能让我领悟到如何写出高效、健壮、可维护的C++代码,这对我来说意义非凡。
我一直在寻找一本能够真正让我“理解”C++的参考书,而不是仅仅停留在“照猫画虎”的阶段。市面上关于C++的书籍琳琅满目,但很多都显得过于碎片化,或者要么就是面向高度专业的开发者,让新手望而却步。这本书的书名,恰恰点出了我的需求——“教程”,这暗示着它有系统性的讲解和循序渐进的引导。我希望它能够帮助我打下坚实的基础,理解C++的内存管理、指针的本质、面向对象的设计思想,以及STL(标准模板库)的高效应用。我尤其关注那些对于初学者来说容易感到困惑的概念,比如模板、异常处理、 RAII(资源获取即初始化)等等。一本优秀的教程,应该能够将这些抽象的概念具象化,通过生动的例子和深入的剖析,让读者豁然开朗。我在拿到这本书后,并没有立即深入阅读,而是先浏览了一下目录和一些关键章节,试图从中窥探其内容的深度和广度。我希望能找到一本真正能够陪伴我走过C++学习之路的书。
作为一名对编程充满热情但又觉得C++门槛较高的学习者,我一直渴望找到一本既权威又易懂的C++教材。这本书的书名“C++程序设计语言教程”让我眼前一亮,因为它直接点明了其核心内容和目标读者。我一直认为,C++之所以强大,也正是因为它复杂,涉及的概念非常多,比如面向对象编程、泛型编程、内存管理等等。很多时候,我们学编程,不仅仅是学习一门语言的语法,更重要的是学习一种编程的思维方式和解决问题的思路。我希望这本书能够帮助我建立起这样一种扎实的思维体系。我特别希望它能够详细讲解C++的各种特性,并且通过大量的实际案例来展示这些特性的应用。比如,在学习类和对象的时候,是否能够讲解如何设计一个完整的类,如何进行继承和多态,以及如何使用虚函数等。在学习STL的时候,是否能详细介绍各种容器和算法的特点和使用场景,以及它们的底层实现原理。
这本书的书名非常朴实无华,直击主题——“C++程序设计语言教程”。我在收到这本书的时候,最直观的感受就是它沉甸甸的分量,这通常意味着内容翔实,知识点密集。我一直认为C++是一门既强大又充满挑战的语言,学习它需要耐心和细致。很多时候,我们不是缺乏学习的资源,而是缺乏能够系统梳理、深入浅出地讲解知识的优秀教材。这本书正是朝着这个方向努力的。它的封面设计也比较传统,没有过于花哨的图案,给人一种踏实可靠的感觉,这让我对接下来的学习充满了期待。我想,一本好的教程,不仅仅是罗列语法和概念,更重要的是能引导读者理解C++的底层机制,掌握其精髓,而不是仅仅停留在“会用”的层面。这本书是否能够做到这一点,是我在翻阅之前最关心的问题。它的章节安排是否逻辑清晰?每一个知识点是否都配有恰当的示例?对于初学者来说,能否循序渐进地掌握?对于有一定基础的学习者,又能否提供更深入的洞察?这些都是我在开始阅读前,脑海中闪过的种种疑问。
计算机必修的
计算机必修的
计算机必修的
计算机必修的
计算机必修的