新書推薦:
《
甲骨文丛书·古代中国的军事文化
》
售價:NT$
454.0
《
中国王朝内争实录(套装全4册):从未见过的王朝内争编著史
》
售價:NT$
1112.0
《
半导体纳米器件:物理、技术和应用
》
售價:NT$
806.0
《
创客精选项目设计与制作 第2版 刘笑笑 颜志勇 严国陶
》
售價:NT$
281.0
《
佛山华家班粤菜传承 华家班59位大厨 102道粤菜 图文并茂 菜式制作视频 粤菜故事技法 佛山传统文化 广东科技
》
售價:NT$
1010.0
《
武人琴音(十周年纪念版 逝去的武林系列收官之作 形意拳一门三代:尚云祥、韩伯言、韩瑜的人生故事 凸显百年武人命运)
》
售價:NT$
199.0
《
剑桥斯堪的纳维亚戏剧史(剑桥世界戏剧史译丛)
》
售價:NT$
704.0
《
禅心与箭术:过松弛而有力的生活(乔布斯精神导师、世界禅者——铃木大拙荐)
》
售價:NT$
301.0
|
編輯推薦: |
本书是为已经初步掌握C程序设计知识的读者而写,帮助读者进一步学习面向对象的概念以及面向对象程序设计。
本书内容丰富,概念明晰,例题剖析充分,循序渐进,易于读者学习。
本书主要介绍C 98标准下的C 内容,也简单介绍了C 11的内容。
|
內容簡介: |
本书结合大量实例详细介绍了C 语言的编程思想和核心技术,培养读者由C程序员成长为C 程序员。本书结合C 实际项目开发,详解C 语言的编程思想和核心技术,培养读者由C程序员成长为C 程序员。 本书共分为11章,其中第1~、2章介绍C 基础知识和扩充知识,第3~、4章从类和对象入手,深入剖析类的相关知识,第5~、6章分别介绍面向对象编程的继承和多态性,第7~、8章介绍运算符重载和输入/输出流,第9~、10章介绍异常处理、命名字空间和模板,第11章介绍现代C 技术。每一章都会包含一些实例,通过这些实例将本章介绍的内容知识以及前面章节中介绍过的内容知识串联起来,最后的习题为读者提供了使用面向对象编程的练习。 本书既适合作为C 初学者的入门书,也适合用作高等院校计算机类相关专业开设面向对象程序设计课程的教学用书。
|
關於作者: |
曾凡锋,多年IT课程(C程序设计、面向对象程序设计、Java程序设计、网络程序设计)的教学经验,多年的编程经验,精通C/C 、Java、C#的编程语言,参与多个实际项目的开发(北京网通的网络综合管理平台、安防一体化管理平台、图像视频检索系统、网络安全设备综合管理系统、视障者辅助阅读系统、软件版权登记系统、铝业生产智能服务系统等)。获得部级科技进步二等奖2次,三等奖4次。
|
目錄:
|
第1章 C 基础知识 1
1.1 C/C 历史 1
1.2 C 开发环境 2
1.2.1 Microsoft Visual Studio概述 2
1.2.2 Visual Studio 2019开发环境简介 3
1.2.3 创建控制台应用程序 8
1.3 C 编程入门 11
1.4 面向对象程序设计 15
1.4.1 基本概念 15
1.4.2 面向对象程序设计的特点 17
1.4.3 面向对象程序设计和面向过程程序设计的比较 18
1.4.4 面向对象的软件开发方法 18
1.5 本章小结 20
本章习题 21
第2章 C 扩充知识 22
2.1 C 标准库头文件 22
2.2 字符串类 23
2.2.1 定义字符串变量 23
2.2.2 字符串的赋值和连接 24
2.2.3 字符串的比较 24
2.2.4 字符串替换 24
2.2.5 string类的特性 24
2.3 const定义常量 26
2.4 引用和引用参数 26
2.4.1 引用 26
2.4.2 引用参数 28
2.4.3 引用的特别说明 29
2.5 函数声明和实参类型转换 29
2.6 默认实参 30
2.7 作用域和作用域运算符 31
2.8 函数重载 32
2.9 内置(内联)函数 34
2.10 使用new和delete运算符动态管理内存 35
2.11 本章小结 37
本章习题 38
第3章 类和对象 39
3.1 类和对象简介 39
3.1.1 类的声明 41
3.1.2 对象和实例化 42
3.2 成员函数的声明和定义 43
3.3 数据成员的声明及设置函数与获取函数 44
3.3.1 数据成员的声明 44
3.3.2 设置函数和获取函数 44
3.4 成员函数的存储和this指针 46
3.5 使用构造函数初始化对象 49
3.5.1 构造函数的声明和定义 49
3.5.2 默认构造函数 51
3.5.3 带默认实参的构造函数 52
3.5.4 参数初始化列表 53
3.5.5 转换构造函数 54
3.6 析构函数 55
3.7 何时调用构造函数和析构函数 57
3.8 类的可重用性 59
3.8.1 一个类对应一个独立文件 59
3.8.2 接口和实现的分离 60
3.9 C 空类说明 62
3.10 本章小结 62
本章习题 64
第4章 类的深入剖析 65
4.1 类的作用域和类成员的访问 65
4.1.1 隐藏机制 66
4.1.2 对象访问类的成员 67
4.1.3 对象指针访问类的成员 67
4.1.4 对象引用访问类的成员 67
4.1.5 类成员访问的例子 68
4.2 对象的赋值和复制 68
4.2.1 对象的赋值 68
4.2.2 对象的复制 70
4.3 const对象和const成员函数 73
4.3.1 const对象 73
4.3.2 const成员函数 73
4.3.3 mutable数据成员 75
4.3.4 const对象和const成员函数的说明 75
4.4 类作为函数参数 75
4.5 动态创建和删除对象 78
4.6 static类成员 80
4.7 友元函数和友元类 83
4.8 组合 85
4.9 本章小结 88
本章习题 89
第5章 面向对象编程之继承 91
5.1 继承 91
5.2 基类和派生类 92
5.2.1 C 继承机制 92
5.2.2 派生类的声明方式 93
5.2.3 派生类对象的构成 95
5.3 派生类成员的访问 96
5.3.1 protected成员 97
5.3.2 不同继承方式下派生类访问基类成员 99
5.3.3 多级继承的成员访问 101
5.3.4 继承下成员访问的规则 103
5.4 public、protected和private继承 103
5.5 基类和派生类的关系 105
5.5.1 替换原则 105
5.5.2 基类与派生类的转换 106
5.5.3 派生类对基类同名成员的隐藏 109
5.6 派生类的构造函数和析构函数 109
5.6.1 简单派生类的构造函数 110
5.6.2 组合方式下派生类的构造函数 111
5.6.3 多级继承时派生类的构造函数 113
5.6.4 派生类的析构函数 115
5.6.5 派生类构造函数的显式定义 116
5.7 多继承和虚基类 117
5.7.1 多继承的声明方法及派生类构造函数 117
5.7.2 多继承下基类同名成员的二义性问题 117
5.7.3 虚基类 118
5.8 本章小结 121
本章习题 122
第6章 面向对象编程之多态性 124
6.1 多态性 124
6.2 典型的多态性实例 125
6.3 虚函数和多态性 126
6.3.1 非虚函数和静态绑定 126
6.3.2 虚函数和动态绑定 128
6.3.3 基类对象调用虚函数 131
6.3.4 多态性对比 132
6.4 抽象类和纯虚函数 132
6.4.1 实例研究 132
6.4.2 抽象类 135
6.5 多态下的构造函数和析构函数 138
6.5.1 构造函数能否是虚函数 138
6.5.2 虚析构函数 138
6.5.3 构造函数和析构函数中的多态性 140
6.6 向下强制类型转换(选修) 142
6.7 多态性的底层实现机制(选修) 144
6.8 本章小结 146
本章习题 147
第7章 运算符重载 149
7.1 运算符重载的基础知识 149
7.1.1 为什么要重载运算符 150
7.1.2 运算符重载的方法 152
7.2 运算符重载的规则 152
7.3 类成员函数和全局函数重载运算符的比较 154
7.3.1 使用类成员函数重载运算符 154
7.3.2 使用全局函数重载运算符 154
7.3.3 两种重载运算符函数的区别 155
7.4 重载一元运算符 155
7.5 重载二元运算符 157
7.6 重载流插入运算符和流提取运算符 159
7.7 类型转换 161
7.7.1 类型转换运算符 162
7.7.2 转换构造函数 162
7.7.3 关键字explicit 163
7.8 重载自增和自减运算符 163
7.9 本章小结 165
本章习题 167
第8章 输入/输出流 169
8.1 流 170
8.1.1 C 流库 170
8.1.2 C 流的主要类及继承层次 171
8.2 输出流 172
8.2.1 使用成员函数put输出字符 172
8.2.2 使用成员函数write非格式化输出 173
8.3 流的格式化输出 173
8.4 输入流 176
8.4.1 使用成员函数get读入字符 176
8.4.2 使用成员函数getline读入一行字符 178
8.4.3 使用成员函数read非格式化输入 179
8.4.4 成员函数peek、putback和ignore 179
8.5 文件流和文件处理 179
8.5.1 文件和流 179
8.5.2 文件创建、打开与关闭 180
8.5.3 ASCII文件的操作 181
8.5.4 二进制文件的操作 185
8.6 本章小结 189
本章习题 190
第9章 异常处理和命名空间 191
9.1 异常处理 191
9.1.1 异常概述 191
9.1.2 异常处理机制 192
9.1.3 异常说明 195
9.1.4 构造函数、析构函数和异常处理 195
9.1.5 标准库异常类层次 195
9.2 命名空间 196
9.2.1 如何定义命名空间 197
9.2.2 如何访问命名空间的成员 197
9.2.3 标准命名空间std 198
9.2.4 命名空间的几点说明 198
9.3 本章小结 198
本章习题 199
第10章 模板 201
10.1 函数模板 202
10.1.1 函数模板的定义和使用 202
10.1.2 函数模板的进一步说明 204
10.2 类模板 206
10.2.1 类模板的定义和使用 207
10.2.2 类模板的进一步说明 209
10.3 STL介绍 210
10.3.1 容器 211
10.3.2 算法 215
10.3.3 迭代器 218
10.3.4 函数对象 219
10.3.5 适配器 220
10.3.6 内存分配器 222
10.4 本章小结 222
本章习题 223
第11章 C 11 225
11.1 C 11简介 225
11.2 C 11新特性 226
11.2.1 auto类型推断 226
11.2.2 decltype类型推断 226
11.2.3 初始化列表 227
11.2.4 Lambda表达式 227
11.2.5 连续右尖括号的改进 228
11.2.6 基于范围的for循环 228
11.2.7 可变参数模板 229
11.2.8 nullptr 230
11.2.9 右值引用 230
11.2.10 显式生成默认函数与显式删除函数 230
11.2.11 override和final 231
11.2.12 智能指针 231
11.2.13 tuple 231
11.3 C 11示例 232
11.4 本章小结 234
本章习题 234
|
內容試閱:
|
C 是直接从 C 语言发展而来的,C 语言得名于C语言中的“ ”运算符。本书覆盖了标准C ,以及由C 所支持的关键性编程技术和设计技术标准,C 较C功能更强大,在许多新的语言特性,如类型推断、初始化列表等方面都进行了优化。本书将知识与实践相结合,内容涉及C 的主要特征及标准库,并通过系统软件领域中的实例解释说明一些关键性的概念与技术。
本书内容
本书共11章,每一章都包含一些实例,通过这些实例将本章介绍的知识以及前面章节中介绍过的知识串联起来;每章最后还给出了大量习题,为读者提供面向对象编程的练习,帮助读者巩固每章所学的重要知识点。
第1章介绍C 基础知识,主要包括C/C 历史、C/C 开发环境、C 编程入门、面向对象程序设计等。
第2章介绍C 扩充知识,主要包括C 标准库头文件、字符串类、const定义常量、引用和引用参数、函数声明和实参类型转换、默认实参、作用域和作用域运算符、函数重载、内置(内联)函数、使用new何delete运算符动态管理内存等。
第3章介绍类和对象,主要包括类的声明、对象和实例化、成员函数声明和定义、数据成员的声明及设置函数与获取函数、成员函数的存储和this指针、使用构造函数初始化对象、构造函数的声明和定义、析构函数、何时调用构造函数和析构函数、类的可重用性、C 空类说明等。
第4章介绍类的深入剖析,主要包括类的作用域和类成员的访问、对象的赋值和复制、const对象和const成员函数、类作为函数参数、动态创建和删除对象、static类成员、组合等。
第5章介绍面向对象编程之继承,主要包括继承、基类和派生类、派生类成员的访问、public/protected和private继承、基类和派生类的关系、派生类的构造函数和析构函数、多继承和虚基类等。
第6章介绍面向对象编程之多态性,主要包括多态性、典型的多态性实例、虚函数和多态性、抽象类和纯虚函数、多态下的构造函数和析构函数、向下强制类型转换(选修)、多态性的底层实现机制(选修)等。
第7章介绍运算符重载,主要包括运算符重载的基础知识、运算符重载的规则、类成员函数和全局函数重载运算符的比较、重载一元运算符、重载二元运算符、重载流插入运算符和流提取运算符、类型转换、重载自增和自减运算符等。
第8章介绍输入/输出流,主要包括流、输出流、流的格式化输出、输入流、文件流和文件处理等。
第9章介绍异常处理和命名空间,主要包括异常处理机制、异常说明、标准库异常类层次、如何定义和访问命名空间、标准命名空间std等。
第10章介绍模板,主要包括函数模板、类模板和STL介绍等。
第11章介绍C 11,主要包括C 11简介、C 11新特性和C 11示例等。
配套源码下载
本书配套的PPT和源代码需要使用微信扫描下面的二维码获取,可按扫描后的页面提示填写你的邮箱,把下载链接转发到邮箱中下载。如果发现问题或有疑问,请用电子邮件联系booksaga@163.com,邮件主题为“从C到C 精通面向对象编程”。
PPT 源代码
鸣谢
本书由曾凡锋编著,参与本书内容研讨和编写的还有孙晶、肖珂和李源。本书虽然倾注了编者的心血,但由于水平有限,书中难免有疏漏之处,欢迎广大读者批评指正。
编 者
2022年6月
|
|