图书介绍

C++ Primer中文版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

C++ Primer中文版
  • Stanley B. Lippman,Josee Lajoie,Barbara E. Moo著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121155352
  • 出版时间:2013
  • 标注页数:838页
  • 文件大小:158MB
  • 文件页数:864页
  • 主题词:C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

C++ Primer中文版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 开始1

1.1 编写一个简单的C++程序2

1.1.1 编译、运行程序3

1.2 初识输入输出5

1.3 注释简介8

1.4 控制流10

1.4.1 while语句10

1.4.2 for语句11

1.4.3 读取数量不定的输入数据13

1.4.4 if语句15

1.5 类简介17

1.5.1 Sales item类17

1.5.2 初识成员函数20

1.6 书店程序21

小结23

术语表23

第Ⅰ部分C++基础27

第2章 变量和基本类型29

2.1 基本内置类型30

2.1.1 算术类型30

2.1.2 类型转换32

2.1.3 字面值常量35

2.2 变量38

2.2.1 变量定义38

2.2.2 变量声明和定义的关系41

2.2.3 标识符42

2.2.4 名字的作用域43

2.3 复合类型45

2.3.1 引用45

2.3.2 指针47

2.3.3 理解复合类型的声明51

2.4 const限定符53

2.4.1 const的引用54

2.4.2 指针和const56

2.4.3 顶层const57

2.4.4 constexpr和常量表达式58

2.5 处理类型60

2.5.1 类型别名60

2.5.2 auto类型说明符61

2.5.3 decltype类型指示符62

2.6 自定义数据结构64

2.6.1 定义Sales data类型64

2.6.2 使用Sales data类66

2.6.3 编写自己的头文件67

小结69

术语表69

第3章 字符串、向量和数组73

3.1 命名空间的 using声明74

3.2 标准库类型string75

3.2.1 定义和初始化string对象76

3.2.2 string对象上的操作77

3.2.3 处理string对象中的字符81

3.3 标准库类型vector86

3.3.1 定义和初始化vector对象87

3.3.2 向vector对象中添加元素90

3.3.3 其他vector操作91

3.4 迭代器介绍95

3.4.1 使用迭代器95

3.4.2 迭代器运算99

3.5 数组101

3.5.1 定义和初始化内置数组101

3.5.2 访问数组元素103

3.5.3 指针和数组105

3.5.4 C风格字符串109

3.5.5 与旧代码的接口111

3.6 多维数组112

小结117

术语表117

第4章 表达式119

4.1 基础120

4.1.1 基本概念120

4.1.2 优先级与结合律121

4.1.3 求值顺序123

4.2 算术运算符124

4.3 逻辑和关系运算符126

4.4 赋值运算符129

4.5 递增和递减运算符131

4.6 成员访问运算符133

4.7 条件运算符134

4.8 位运算符135

4.9 sizeof运算符139

4.10 逗号运算符140

4.11 类型转换141

4.11.1 算术转换142

4.11.2 其他隐式类型转换143

4.11.3 显式转换144

4.12 运算符优先级表147

小结149

术语表149

第5章 语句153

5.1 简单语句154

5.2 语句作用域155

5.3 条件语句156

5.3.1 if语句156

5.3.2 switch语句159

5.4 迭代语句165

5.4.1 while语句165

5.4.2 传统的for语句166

5.4.3 范围for语句168

5.4.4 do while语句169

5.5 跳转语句170

5.5.1 break语句170

5.5.2 continue语句171

5.5.3 goto语句172

5.6 try语句块和异常处理172

5.6.1 throw表达式173

5.6.2 try语句块174

5.6.3 标准异常176

小结178

术语表178

第6章 函数181

6.1 函数基础182

6.1.1 局部对象184

6.1.2 函数声明186

6.1.3 分离式编译186

6.2 参数传递187

6.2.1 传值参数187

6.2.2 传引用参数188

6.2.3 const形参和实参190

6.2.4 数组形参193

6.2.5 main:处理命令行选项196

6.2.6 含有可变形参的函数197

6.3 返回类型和return语句199

6.3.1 无返回值函数200

6.3.2 有返回值函数200

6.3.3 返回数组指针205

6.4 函数重载206

6.4.1 重载与作用域210

6.5 特殊用途语言特性211

6.5.1 默认实参211

6.5.2 内联函数和constexpr函数213

6.5.3 调试帮助215

6.6 函数匹配217

6.6.1 实参类型转换219

6.7 函数指针221

小结225

术语表225

第7章 类227

7.1 定义抽象数据类型228

7.1.1 设计Sales data类228

7.1.2 定义改进的Sales data类230

7.1.3 定义类相关的非成员函数234

7.1.4 构造函数235

7.1.5 拷贝、赋值和析构239

7.2 访问控制与封装240

7.2.1 友元241

7.3 类的其他特性243

7.3.1 类成员再探243

7.3.2 返回this的成员函数246

7.3.3 类类型249

7.3.4 友元再探250

7.4 类的作用域253

7.4.1 名字查找与类的作用域254

7.5 构造函数再探257

7.5.1 构造函数初始值列表258

7.5.2 委托构造函数261

7.5.3 默认构造函数的作用262

7.5.4 隐式的类类型转换263

7.5.5 聚合类266

7.5.6 字面值常量类267

7.6 类的静态成员268

小结273

术语表273

第Ⅱ部分C++标准库275

第8章 IO库277

8.1 IO类278

8.1.1 IO对象无拷贝或赋值279

8.1.2 条件状态279

8.1.3 管理输出缓冲281

8.2 文件输入输出283

8.2.1 使用文件流对象284

8.2.2 文件模式286

8.3 string流287

8.3.1 使用istringstream287

8.3.2 使用ostringstrearn289

小结290

术语表290

第9章 顺序容器291

9.1 顺序容器概述292

9.2 容器库概览294

9.2.1 迭代器296

9.2.2 容器类型成员297

9.2.3 begin和end成员298

9.2.4 容器定义和初始化299

9.2.5 赋值和swap302

9.2.6 容器大小操作304

9.2.7 关系运算符304

9.3 顺序容器操作305

9.3.1 向顺序容器添加元素305

9.3.2 访问元素309

9.3.3 删除元素311

9.3.4 特殊的forward list操作312

9.3.5 改变容器大小314

9.3.6 容器操作可能使迭代器失效315

9.4 vector对象是如何增长的317

9.5 额外的string操作320

9.5.1 构造string的其他方法321

9.5.2 改变string的其他方法322

9.5.3 string搜索操作325

9.5.4 compare函数327

9.5.5 数值转换327

9.6 容器适配器329

小结332

术语表332

第10章 泛型算法335

10.1 概述336

10.2 初识泛型算法338

10.2.1 只读算法338

10.2.2 写容器元素的算法339

10.2.3 重排容器元素的算法342

10.3 定制操作344

10.3.1 向算法传递函数344

10.3.2 lambda表达式345

10.3.3 lambda捕获和返回349

10.3.4 参数绑定354

10.4 再探迭代器357

10.4.1 插入迭代器358

10.4.2 iostream迭代器359

10.4.3 反向迭代器363

10.5 泛型算法结构365

10.5.1 5类迭代器365

10.5.2 算法形参模式367

10.5.3 算法命名规范368

10.6 特定容器算法369

小结371

术语表371

第11章 关联容器373

11.1 使用关联容器374

11.2 关联容器概述376

11.2.1 定义关联容器376

11.2.2 关键字类型的要求378

11.2.3 pair类型379

11.3 关联容器操作381

11.3.1 关联容器迭代器382

11.3.2 添加元素383

11.3.3 删除元素386

11.3.4 map的下标操作387

11.3.5 访问元素388

11.3.6 一个单词转换的map391

11.4 无序容器394

小结397

术语表397

第12章 动态内存399

12.1 动态内存与智能指针400

12.1.1 shared_Ptr类400

12.1.2 直接管理内存407

12.1.3 shared_ptr和new结合使用412

12.1.4 智能指针和异常415

12.1.5 unique_Ptr417

12.1.6 weak_Ptr420

12.2 动态数组423

12.2.1 new和数组423

12.2.2 allocator类427

12.3 使用标准库:文本查询程序430

12.3.1 文本查询程序设计430

12.3.2 文本查询程序类的定义432

小结436

术语表436

第Ⅲ部分 类设计者的工具437

第13章 拷贝控制439

13.1 拷贝、赋值与销毁440

13.1.1 拷贝构造函数440

13.1.2 拷贝赋值运算符443

13.1.3 析构函数444

13.1.4 三/五法则447

13.1.5 使用=default449

13.1.6 阻止拷贝449

13.2 拷贝控制和资源管理452

13.2.1 行为像值的类453

13.2.2 定义行为像指针的类455

13.3 交换操作457

13.4 拷贝控制示例460

13.5 动态内存管理类464

13.6 对象移动470

13.6.1 右值引用471

13.6.2 移动构造函数和移动赋值运算符473

13.6.3 右值引用和成员函数481

小结486

术语表486

第14章 重载运算与类型转换489

14.1 基本概念490

14.2 输入和输出运算符494

14.2.1 重载输出运算符<<494

14.2.2 重载输入运算符>>495

14.3 算术和关系运算符497

14.3.1 相等运算符497

14.3.2 关系运算符498

14.4 赋值运算符499

14.5 下标运算符501

14.6 递增和递减运算符502

14.7 成员访问运算符504

14.8 函数调用运算符506

14.8.1 lambda是函数对象507

14.8.2 标准库定义的函数对象509

14.8.3 可调用对象与function511

14.9 重载、类型转换与运算符514

14.9.1 类型转换运算符514

14.9.2 避免有二义性的类型转换517

14.9.3 函数匹配与重载运算符521

小结523

术语表523

第15章 面向对象程序设计525

15.1 OOP:概述526

15.2 定义基类和派生类527

15.2.1 定义基类528

15.2.2 定义派生类529

15.2.3 类型转换与继承534

15.3 虚函数536

15.4 抽象基类540

15.5 访问控制与继承542

15.6 继承中的类作用域547

15.7 构造函数与拷贝控制551

15.7.1 虚析构函数552

15.7.2 合成拷贝控制与继承552

15.7.3 派生类的拷贝控制成员554

15.7.4 继承的构造函数557

15.8 容器与继承558

15.8.1 编写Basket类559

15.9 文本查询程序再探562

15.9.1 面向对象的解决方案563

15.9.2 Query_base类和Query类567

15.9.3 派生类568

15.9.4 eval函数571

小结575

术语表575

第16章 模板与泛型编程577

16.1 定义模板578

16.1.1 函数模板578

16.1.2 类模板583

16.1.3 模板参数592

16.1.4 成员模板595

16.1.5 控制实例化597

16.1.6 效率与灵活性599

16.2 模板实参推断600

16.2.1 类型转换与模板类型参数601

16.2.2 函数模板显式实参603

16.2.3 尾置返回类型与类型转换604

16.2.4 函数指针和实参推断607

16.2.5 模板实参推断和引用608

16.2.6 理解std::move610

16.2.7 转发612

16.3 重载与模板614

16.4 可变参数模板618

16.4.1 编写可变参数函数模板620

16.4.2 包扩展621

16.4.3 转发参数包622

16.5 模板特例化624

小结630

术语表630

第Ⅳ部分 高级主题633

第17章 标准库特殊设施635

17.1 tuple类型636

17.1.1 定义和初始化tuple637

17.1.2 使用tuple返回多个值638

17.2 bitset类型640

17.2.1 定义和初始化bitset641

17.2.2 bitset操作643

17.3 正则表达式645

17.3.1 使用正则表达式库646

17.3.2 匹配与Regex迭代器类型650

17.3.3 使用子表达式653

17.3.4 使用regex_ replace657

17.4 随机数659

17.4.1 随机数引擎和分布660

17.4.2 其他随机数分布663

17.5 IO库再探666

17.5.1 格式化输入与输出666

17.5.2 未格式化的输入/输出操作673

17.5.3 流随机访问676

小结680

术语表680

第18章 用于大型程序的工具683

18.1 异常处理684

18.1.1 抛出异常684

18.1.2 捕获异常687

18.1.3 函数try语句块与构造函数689

18.1.4 noexcept异常说明690

18.1.5 异常类层次693

18.2 命名空间695

18.2.1 命名空间定义695

18.2.2 使用命名空间成员701

18.2.3 类、命名空间与作用域705

18.2.4 重载与命名空间708

18.3 多重继承与虚继承710

18.3.1 多重继承711

18.3.2 类型转换与多个基类713

18.3.3 多重继承下的类作用域715

18.3.4 虚继承717

18.3.5 构造函数与虚继承720

小结722

术语表722

第19章 特殊工具与技术725

19.1 控制内存分配726

19.1.1 重载new和delete726

19.1.2 定位new表达式729

19.2 运行时类型识别730

19.2.1 dynamic cast运算符730

19.2.2 typeid运算符732

19.2.3 使用RTTI733

19.2.4 type_info类735

19.3 枚举类型736

19.4 类成员指针739

19.4.1 数据成员指针740

19.4.2 成员函数指针741

19.4.3 将成员函数用作可调用对象744

19.5 嵌套类746

19.6 union:一种节省空间的类749

19.7 局部类754

19.8 固有的不可移植的特性755

19.8.1 位域756

19.8.2 volatile限定符757

19.8.3 链接指示:extern“C”758

小结762

术语表762

附录A标准库765

A.1 标准库名字和头文件766

A.2 算法概览770

A.2.1 查找对象的算法771

A.2.2 其他只读算法772

A.2.3 二分搜索算法772

A.2.4 写容器元素的算法773

A.2.5 划分与排序算法775

A.2.6 通用重排操作776

A.2.7 排列算法778

A.2.8 有序序列的集合算法778

A.2.9 最小值和最大值779

A.2.10 数值算法780

A.3 随机数781

A.3.1 随机数分布781

A.3.2 随机数引擎783

索引785

热门推荐