《C++STL程序员开发指南》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:彭木根,王淑凌编著
  • 出 版 社:北京市:中国铁道出版社
  • 出版年份:2003
  • ISBN:7113051642
  • 页数:500 页
图书介绍:本书通过对大量程序实例的分析,深入浅出地讲解了C++ STL高级编程技术。

目录 3

第一篇 预备知识 3

第1章 C++编程技术 3

1-1C++与C语言的区别 4

1-1-1文件扩展名的改变 4

1-1-2简化输入/输出手段 5

1-1-3数据类型声明的改变 5

1-1-4动态内存分配运算符的使用 6

1-1-5引用(References)类型 8

1-1-6const语义的扩展 9

1-1-7指针声明类型与对象类型相一致 13

1-1-8int与char不再等价 13

1-1-9结构数据类型的变化 13

1-1-10数组和指针技术的不同 14

1-2C++存储技术 15

1-2-1C++存储类型 15

1-2-2C++存取修饰符 16

1-2-3C++对象的生存期 17

1-3-1类的构造函数、析构函数与赋值函数 19

1-3C++函数技术 19

1-3-2在派生类中实现类的基本函数 29

1-3-3内联函数技术 30

1-3-4友元函数技术 31

1-4C++面向对象机制的实现 33

1-4-1类的继承技术 33

1-4-2函数重载技术 37

1-4-3运算符重载技术 38

1-4-4纯虚函数和抽象类技术 40

1-5小结 42

第2章 C++标准库技术 43

2-1C++标准库简介 44

2-1-1I/O流技术 46

2-1-2string类 48

2-1-3标准异常类 48

2-1-4标准模板库类 49

2-2C++输入/输出流技术 50

2-2-1C++语言输入/输出流概述 50

2-2-2输入/输出格式控制 50

2-2-3特殊输入/输出流格式的设定 55

2-2-4自定义的流操作符 60

2-2-5根本不用于标准流运算符间的流字符串读/写函数 61

2-2-6标准输入/输出流的操作符的重载 62

2-2-7C++文件输入/输出流 63

2-3C++字符串技术 75

2-3-1字符串类基本操作 75

2-3-2复杂字符串实例 89

2-4-1绝对终止机制 92

2-4标准异常类 92

2-4-2非局部Goto机制 95

2-4-3signals机制 95

2-4-4C++异常处理机制 97

2-4-5类的异常处理 99

2-5小结 100

第二篇 C++STL技术原理和组成 103

第3章 STL技术原理 103

3-1模板概述 104

3-1-1Smalltalk方法 104

3-1-2模板方法 105

3-1-3模板参数 106

3-1-4关键字typename的使用 107

3-2函数模板 108

3-2-1函数模板基础 108

3-2-2函数的定制 110

3-2-3函数模板实例 112

3-3类模板 115

3-3-1类模板定义 116

3-3-3类模板中的友元 118

3-3-2类模板使用 118

3-3-4模板程序设计举例 119

3-4模板安全 122

3-4-1Class类型的参数 123

3-4-2包容安全 124

3-4-3默认构造函数 124

3-4-4operatornew 125

3-4-5Destructor 125

3-4-6其他 126

3-5-1一个特殊化的例子 129

3-5模板的特殊性 129

3-5-2指针特殊化 130

3-6模板实例——list容器类设计 132

3-7小结 135

第4章 STL技术概述 137

4-1STL简介 138

4-1-1什么是STL 138

4-1-2STL的发展 139

4-1-3STL的使用和实现——确定无益后删除 140

4-1-4命名空间技术 142

4-2STL基本结构 143

4-2-1容器(Containers) 144

4-2-2算法(Algorithms) 148

4-2-3迭代器(Iterators) 150

4-2-4函数对象(FunctionObject) 153

4-2-5其他部件 154

4-3STL编程概述 154

4-3-1传统C++编程技术 155

4-3-2STL编程技术 156

4-4STL头文件和编译器 161

4-5STL与MFC比较 162

4-5-1MFC的缺陷 163

4-5-2STL与MFC指针技术的差别 163

4-5-3STL技术与MFC的互补 165

4-5-4STL与MFC的类差别 167

4-5-5STL与MFC的互相转换 174

4-6STL编程关键 176

4-5-1STL容器技术 176

4-5-2C++和STL技术 178

4-7小结 184

第三篇 C++STL容器编程技术 189

第5章 STL容器技术总述 189

5-1容器技术概述 190

5-1-1容器介绍 193

5-1-2Forward容器 194

5-1-3Reversible容器 195

5-1-4Sequence 195

5-2-1vector头文件 196

5-2vector技术 196

5-1-5Associative容器 196

5-2-2vector对象 197

5-2-3vector实例 199

5-3deque技术 200

5-3-1deque头文件 201

5-3-2deque对象 201

5-3-3deque实例 203

5-4list技术 204

5-4-2list对象 205

5-4-1list头文件 205

5-4-3list实例 208

5-5stack技术 209

5-5-1stack头文件 209

5-5-2stack对象 210

5-5-3stack实例 211

5-6queue技术 213

5-6-1queue头文件 213

5-6-2queue对象 213

5-6-3queue实例 214

5-7priority_queue技术 216

5-7-1priority_queue头文件 217

5-7-2priority_queue对象 217

5-7-3priority_queue实例 218

5-8slist技术 220

5-9关联式容器 221

5-9-1set介绍 221

5-9-2multiset介绍 224

5-9-3map介绍 228

5-9-4multimap介绍 233

5-9-5实例详解 237

5-10小结 238

第6章 vector技术编程详解 239

6-1vector编程入门 240

6-1-1定义vector 240

目录 242

6-1-2vector初始化 242

6-1-3vector大小统计 243

6-2-1判断vector是否空 244

6-2vector基本使用 244

6-2-2使用循环遍历成员 246

6-2-3使用迭代器 247

6-2-4使用算法 248

6-3vector高级编程技术 251

6-3-1vector对象的查找 251

6-3-2vector对象的搜索 252

6-3-3vector字符串处理 253

6-3-4vector的排序 255

6-3-5vector元素增加 256

6-3-6vector元素删除 257

6-3-7vector对象交换 260

6-4vector程序综合实例分析 261

6-5小结 264

第7章 deque技术编程详解 265

7-1deque编程入门 266

7-1-1deque的定义 266

7-1-2deque赋值 268

7-1-3deque大小度量函数 270

7-1-4返回函数 271

7-2deque编程深入 276

7-2-1判断容器是否为空 276

7-2-2deque访问 278

7-2-3deque重置技术 279

7-2-4容器内容交换 280

7-3deque插入和删除技术 282

7-3-1insert操作 283

7-3-2erase操作 284

7-3-3clear操作 285

7-4deque模板函数详解 286

7-4-1operator[] 286

7-4-2operator== 288

7-4-3operator< 288

7-4-4operator!= 289

7-4-5operator<= 290

7-4-6operator> 290

7-4-7operator>= 291

7-5deque实例详解 292

7-6小结 295

第8章 list技术编程详解 297

8-1list编程入门 298

8-1-11ist的定义 298

8-1-2list赋值 301

8-1-3list大小度量函数 306

8-1-4返回函数 309

8-2-1判断容器是否为空 313

8-2list编程详解 313

8-2-2list访问 314

8-2-3list重置技术 315

8-2-4容器内容交换 317

8-3list插入和删除技术 319

8-3-1insert操作 319

8-3-2erase操作 321

8-3-3clear操作 323

8-4list模板函数详解 323

8-4-2operator< 324

8-4-1operator== 324

8-4-3operator!= 325

8-4-4operator<= 326

8-4-5operator> 327

8-4-6operator>= 327

8-5list特殊函数 328

8-5-1merge()函数的使用 328

8-5-2remove() 330

8-5-3remove_if() 331

8-5-4sort() 332

8-5-5splice() 333

8-5-6unique() 335

8-6list实例详解 336

8-7小结 342

第9章 set和multiset技术编程详解 343

9-1set和multiset定义和创建 344

9-1-1set类模板简介 345

9-1-2multiset类模板简介 347

目录 349

9-2-1begin函数 349

9-2set和multiset编程基础 349

9-2-2end函数 351

9-2-3rbegin函数 352

9-2-4rend函数 354

9-2-5判断空函数 357

9-2-6计算大小函数 358

9-2-7元素的插入 360

9-2-8元素的删除操作 362

9-3-1count函数 366

9-3set和multiset深入编程 366

9-3-2元素的查找 368

9-3-3上下限迭代器的返回 370

9-3-4元素的随机访问 371

9-3-5元素大小比较 375

9-3-6获取内存分配器 379

9-4set和multiset编程实例 381

9-5小结 387

第10章 map和multinmap技术编程详解 389

10-1map和multimap定义和使用 390

10-1-1map类模板简介 391

10-1-2multimap类模板简介 393

10-2map和multimap编程基础 395

10-2-1begin函数 395

10-2-2end函数 397

10-2-3rbegin函数 399

10-2-4rend函数 401

10-2-5判断空函数 404

10-2-6计算大小函数 405

10-2-7元素的插入 408

10-2-8元素的删除操作 410

10-2-9元素的交换 414

10-3map和multimap深入编程 417

10-3-1count函数 417

10-3-2元素的查找 418

10-3-3元素相等时上下限迭代器的返回 420

10-3-4元素的随机访问 423

10-3-5元素大小比较 427

10-3-6获取内存分配器 430

10-4编程实例 433

10-5小结 440

第四篇 C++算法技术 443

第11章 通用算法技术 443

11-1通用算法技术简介 444

11-2非修正序列算法 448

11-2-1查找容器中相同的相邻元素 448

11-2-2容器中相同元素统计 449

11-2-3容器对象变量比较 450

11-2-4元素查找 451

11-2-5特定的循环操作 454

11-2-6不相等元素查找 456

11-2-7采用search查找函数 458

11-3修正序列算法 459

11-3-1元素复制 460

11-3-2赋值操作 461

11-3-3通过函数进行元素的赋值 462

11-3-4容器拆分技术 463

11-3-5重新随机分布 464

11-3-6元素删除 466

11-3-7元素替换 467

11-3-8元素的旋转 467

11-3-9元素颠倒算法 469

11-3-10元素交换算法 470

11-3-11容器运算技术 472

11-3-12删除容器中重复元素 473

11-4排序算法 475

11-4-1排序算法 475

11-4-2排序元素的查找 478

11-4-3字典式比较 483

11-4-4极值元素求解 484

11-4-5合并排序算法 489

11-4-6拆分排序 492

11-4-7堆栈操作技术 493

11-5数值算法 495

11-5-1元素求和 495

11-5-2元素内积 498

11-5-3序列相邻差 499

11-6小结 500