欢迎光临
免费的PDF电子书下载网站

C++进阶心法 PDF下载

编辑推荐

     本书集C/C 基础与进阶语法知识点、C 0x新标准、编码规范与建议等多方面内容于一体,力求读者在学习C 时,能够对C 语法、C 0x新标准与编程码规范有深入的理解和全面的掌握。本书参考了众多优秀著作和经典网络博文,结合自身工程实践经验,以言简意赅的语言概括了学习C 必知必会的知识点。内容较为广泛,但主要篇幅仍然是围绕C 展开,为了帮助读者更好地理解晦涩难懂的语法知识,书中融入了大量实例以佐证理论的说明。总体而言,对C 的介绍,内容的宽度和深度都会略高于基础教材,偏于实践,能够帮助初学者进一步地掌握C 并将其得心应手地应用于工程实践当中。

     本书全篇分为十章,细分可分为三大部分。*部分为第1章内容,讲述了C语言的重要知识点,也是学习C 必须要掌握的基础知识,包括关键字volatile、令人迷惑的数组与指针、分离编译模式等。第二部分为第2章至第9章,讲述了C 基础与进阶语法知识,包括基础的数据类型、引用、名字空间、左值与右值等相关概念与基本用法,实现高效安全编码必须要掌握的内存管理,面向对象的封装、继承与多态,以及程序异常处理和C 0x新标准等内容。书籍不局限于C 传统语法的介绍,融入C *的变革内容,帮助读者对C 有一个更加全面、与时俱进的了解。第三部分为第10章内容,给出了业界常见的编码规范与建议,供C 学习和从业人员参考,旨在帮助读者写出优秀的工程级代码。
 

内容简介

     本书共10章,其中,第1章介绍了C、C 的基础知识,包括关键字volatile、数组与指针、编译模式等;第2~9章介绍了C 基础与进阶语法,包括数据类型、引用、名字空间、左值与右值,以及内存管理,面向对象的封装、继承与多态,程序异常处理和C 0x新标准等内容;第10章给出了业界常见的编码规范与建议。本书不仅介绍了C 的传统语法,而且还融入了C *的变革内容,旨在帮助读者对C 有一个更加全面的了解,快速地掌握C 编程技巧,并将其应用于工程实践中。

     本书既可作为C 编程人员以及相关专业技术人员的参考用书,也可作为高等院校、高职高专院校程序设计相关课程的教学用书。

作者简介

     吕吕,毕业于华南理工大学,目前任职于腾讯公司,从事后台策略安全工作。主要研究方向有高性能计算、业务安全防护。具有多年的软件行业从业经验,CSDN博客专家。

     王琥,毕业于华南理工大学,现为新加坡管理大学AI实验室研究员,主要研究方向有图像分类识别,具有多年的软件行业从业经验。

 

C++进阶心法 PDF下载

目录

第1章 C  中的C ………………………………………………………………… 1

1.1 认识volatile ……………………………………………………………………… 1

1.2 数组与指针详解…………………………………………………………………… 6

1.3 认识size_t和指针类型的大小 …………………………………………………… 13

1.4 野指针…………………………………………………………………………… 16

1.5 字符数组的初始化与赋值 ………………………………………………………… 18

1.6 文字常量与常变量 ……………………………………………………………… 20

1.7 数据类型宽度扩展 ……………………………………………………………… 22

1.8 分离编译模式简介 ……………………………………………………………… 24

第2章 C 基础 …………………………………………………………………… 28

2.1 C 发展概述 …………………………………………………………………… 28

2.2 声明与定义的区别 ……………………………………………………………… 29

2.3 认识初始化 ……………………………………………………………………… 32

2.4 结构体的初始化与赋值…………………………………………………………… 37

2.5 认识sizeof ……………………………………………………………………… 39

2.6 认识const ……………………………………………………………………… 49

2.7 struct与union…………………………………………………………………… 57

2.8 多字节字符串与宽字符串的相互转换 …………………………………………… 62

2.9 引用的本质 ……………………………………………………………………… 69

2.10 链式操作 ……………………………………………………………………… 73

2.11 C 的数据类型 ……………………………………………………………… 75

2.12 数据类型转换…………………………………………………………………… 78

2.13 数值类型与string的相互转换…………………………………………………… 91

2.14 临时变量的常量性 ……………………………………………………………… 94

2.15 左值、右值和常引用 …………………………………………………………… 96

2.16 mutable的用法 ………………………………………………………………… 99

2.17 名字空间 ……………………………………………………………………… 101

2.18 作用域与生命周期 …………………………………………………………… 107

2.19 引用计数 ……………………………………………………………………… 112

2.20 I/O流简介 …………………………………………………………………… 119

2.21 头文件的作用和用法…………………………………………………………… __________136

第3章 内存管理…………………………………………………………………… 141

3.1 程序内存布局…………………………………………………………………… 141

3.2 堆与栈的区别…………………………………………………………………… 143

3.3 new的3种面貌 ………………………………………………………………… 155

3.4 delete的3种面貌 ……………………………………………………………… 158

3.5 new与delete的使用规范 ……………………………………………………… 164

3.6 智能指针简介…………………………………………………………………… 168

3.7 STL的四种智能指针 …………………………………………………………… 172

3.8 以智能指针管理内存资源 ……………………………………………………… 188

3.9 内存池介绍与经典内存池的实现 ………………………………………………… 191

第4章 函 数……………………………………………………………………… 199

4.1 关于 main()函数的几点说明 …………………………………………………… 199

4.2 函数参数入栈的思考 …………………………………………………………… 202

4.3 函数调用时堆栈的变化情况 …………………………………………………… 206

4.4 如何禁止函数传值调用 ………………………………………………………… 210

4.5 函数指针简介…………………………………………………………………… 213

4.6 操作符重载 …………………………………………………………………… 215

4.7 函数重载、隐藏、覆盖和重写的区别 ……………………………………………… 224

4.8 inline函数 ……………………………………………………………………… 230

4.9 变参函数 ……………………………………………………………………… 235

第5章 类与对象…………………………………………………………………… 241

5.1 终结类 ………………………………………………………………………… 241

5.2 嵌套类与局部类 ………………………………………………………………… 243

5.3 纯虚函数与抽象类 ……………………………………………………………… 245

5.4 临时对象 ……………………………………………………………………… 249

5.5 构造函数体内赋值与初始化列表的区别 ………………………………………… 252

5.6 对象产生和销毁的顺序 ………………………………………………………… 253

5.7 类成员指针 …………………………………………………………………… 254

5.8 控制对象的创建方式和数量 …………………………………………………… 258

5.9 仿函数 ………………………………………………………………………… 263

5.10 explicit禁止构造函数的隐式调用 ……………………………………………… 267

5.11 类的设计与实现规范…………………………………………………………… 270

第6章 继承与多态………………………………………………………………… 275

6.1 多态的两种形式 ………………………………………………………………… 275

6.2 继承与组合的区别 ……………………………………………………………… 278

6.3 基类私有成员会被继承吗 ……………………………………………………… 282

6.4 虚拟继承与虚基类 ……………………………………………………………… 285

6.5 typeid简介……………………………………………………………………… 289

6.6 虚调用及其调用的具体形式 …………………………………………………… 293

6.7 动态联编实现原理分析 ………………………………………………………… __________297

6.8 接口继承与实现继承的区别和选择 ……………………………………………… 306

6.9 获取类成员虚函数地址 ………………………………………………………… 307

6.10 构造函数与析构函数调用虚函数的注意事项 …………………………………… 309

第7章 模板与泛型编程…………………………………………………………… 311

7.1 typename的双重含义 …………………………………………………………… 311

7.2 模板实例化与调用 ……………………………………………………………… 313

7.3 模板特化与模板偏特化 ………………………………………………………… 316

7.4 函数声明对函数模板实例化的屏蔽 ……………………………………………… 323

7.5 模板与分离编译模式 …………………………………………………………… 324

7.6 endl的本质是什么 ……………………………………………………………… 326

7.7 将模板声明为友元 ……………………………………………………………… 330

7.8 认识容器的迭代器 ……………………………………………………………… 334

7.9 模板元编程简介 ………………………………………………………………… 339

第8章 C 0x初探 ……………………………………………………………… 348

8.1 新关键字 ……………………………………………………………………… 348

8.2 基于范围的for循环 …………………………………………………………… 361

8.3 就地初始化与列表初始化 ……………………………………………………… 365

8.4 Lambda表达式 ………………………………………………………………… 367

8.5 移动语义与右值引用 …………………………………………………………… 373

8.6 POD类型 ……………………………………………………………………… 383

8.7 委托构造函数…………………………………………………………………… 388

8.8 继承构造函数…………………………………………………………………… 390

8.9 Unicode支持 …………………………………………………………………… 394

8.10 原生字符串 …………………………………………………………………… 401

8.11 通用属性 ……………………………………………………………………… 404

8.12 变参模板 ……………………………………………………………………… 407

8.13 函数模板的默认模板参数 ……………………………………………………… 417

8.14 折叠表达式 …………………………………………………………………… 419

8.15 强类型枚举简介 ……………………………………………………………… 422

8.16 显示类型转换 ………………………………………………………………… 425

第9章 异常处理…………………………………………………………………… 427

9.1 为什么要引入异常处理机制 …………………………………………………… 427

9.2 抛出异常与传递参数的区别 …………………………………………………… 430

9.3 抛出和接收异常的顺序 ………………………………………………………… 438

9.4 构造函数抛出异常的注意事项…………………………………………………… 442

9.5 析构函数禁止抛出异常 ………………………………………………………… 445

9.6 使用引用捕获异常 ……………………………………………………………… 448

9.7 栈展开如何防止内存泄漏 ……………………………………………………… 451

9.8 异常处理的开销 ………………………………………………………………… 453

第10章 编码规范与建议 ………………………………………………………… 456

10.1 命名方式建议 ………………………………………………………………… 456

10.2 代码调试建议 ………………………………………………………………… 459

10.3 头文件使用规范建议…………………………………………………………… 463

10.4 函数使用规范建议 …………………………………………………………… 469

10.5 作用域使用规范建议…………………………………………………………… ?472

10.6 类使用规范建议 ……………………………………………………………… 476

10.7 编码格式建议 ………………………………………………………………… 485

10.8 注释风格建议 ………………………………………………………………… 494

10.9 特性使用建议 ………………………………………………………………… 502

参考文献……………………………………………………………………………… 513__

 

C++进阶心法 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:C++进阶心法