中国图书网>>自然科学技术>>计算机技术>>计算机语言与程序>>高质量程序设计指南——C++/C语言(第3版)

    高质量程序设计指南——C++/C语言(第3版)

作    者:林锐;韩永泉 [同作者作品]
I S B N:7121041146
出 版 社:电子工业
定    价:39.8元
现 卖 价: 35.0 元(1星会员价)
34.6 元(2星会员价)
33.8 元(3星会员价)
               

高质量程序设计指南——C++/C语言(第3版) 特色及评论

高质量程序设计是软件行业的薄弱环节,大部分企业只能依靠大量的测试和改错来提高软件产品的质量,为此付出了高昂的代价。因此,如何让程序员熟练地掌握编程技术和编程规范,在开发过程中内建高质量代码,是IT企业面临的主要挑战之一。
本书以轻松幽默的笔调向读者论述了高质量软件开发方法与C++/C编程规范。它是作者多年从事软件开发工作的经验总结。本书共17章,第1章到第4章重点介绍软件质量和基本的程序设计方法;第5章到第16章重点阐述C++/C编程风格、面向对象程序设计方法和一些技术专题;第17章阐述STL的原理和使用方法。.
本书第1版和第2版部分章节曾经在Internet上广泛流传,被国内IT企业的不少软件开发人员采用。本书的附录C《大学十年》是作者在网上发表的一个短篇传记,文中所描述的充满激情的学习和生活态度,感染了大批莘莘学子。..
本书的主要读者对象是IT企业的程序员和项目经理,以及大专院校的本科生和研究生。...

高质量程序设计指南——C++/C语言(第3版) 内容简介

[本书特色]

高质量程序设计是软件行业的薄弱环节,大部分企业只能依靠大量的测试和改错来提高软件产品的质量,为此付出了高昂的代价。本书指导程序员熟练地掌握编程技术和编程规范,在开发过程中内建高质量代码,为企业降低成本起到指导作用。

 [精彩试读一]

 [精彩试读二]

  本书以轻松幽默的笔调向读者论述了高质量软件开发方法与C++/C编程规范。它是作者多年从事软件开发工作的经验总结。本书共17章,第1章到第4章重点介绍软件质量和基本的程序设计方法;第5章到第16章重点阐述 C++/C编程风格、面向对象程序设计方法和一些技术专题;第17章阐述STL 的原理和使用方法。
  本书第1版和第2版部分章节曾经在Internet上广泛流传,被国内IT企业的不少软件开发人员采用。本书的附录C《大学十年》是作者在网上发表的一个短篇传记,文中所描述的充满激情的学习和生活态度,感染了大批莘莘学子。
  本书的主要读者对象是IT企业的程序员和项目经理,以及大专院校的本科生和研究生。

高质量程序设计指南——C++/C语言(第3版) 本书目录


第1章高质量软件开发之道. 1
1.1软件质量基本概念 1
1.1.1如何理解软件的质量 1
1.1.2提高软件质量的基本方法 3
1.1.3“零缺陷”理念 4
1.2细说软件质量属性 4
1.2.1正确性 4
1.2.2健壮性 5
1.2.3可靠性 5
1.2.4性能 6
1.2.5易用性 7
1.2.6清晰性 7
1.2.7安全性 7
1.2.8可扩展性 8
1.2.9兼容性 8
1.2.10可移植性 8
1.3人们关注的不仅仅是质量 9
1.3.1质量.生产率和成本之间的关系 9
1.3.2软件过程改进的基本概念 11
1.4高质量软件开发的基本方法 13
1.4.1建立软件过程规范 13
1.4.2复用 15
1.4.3分而治之 16
1.4.4优化与折中 17
1.4.5技术评审 18
1.4.6测试 19
1.4.7质量保证 21
1.4.8改错 22
1.5关于软件开发的一些常识和思考 24
1.5.1有最好的编程语言吗 24
1.5.2编程是一门艺术吗 24
1.5.3编程时应该多使用技巧吗 24
1.5.4换更快的计算机还是换更快的算法 25
1.5.5错误是否应该分等级 25
1.5.6一些错误的观念 25
1.6小结 26
第2章编程语言发展简史 27
2.1编程语言大事记 27
2.2Ada的故事 30
2.3C/C++发展简史 31
2.4Borland与Microsoft之争 32
2.5Java阵营与Microsoft的较量 33
2.6小结 36
第3章程序的基本概念 37
3.1程序设计语言 37
3.2语言实现 38
3.3程序库 40
3.4开发环境 40
3.5程序的工作原理 41
3.6良好的编程习惯 42
第4章C++/C程序设计入门 45
4.1C++/C程序的基本概念 45
4.1.1启动函数main() 45
4.1.2命令行参数 47
4.1.3内部名称 48
4.1.4连接规范 49
4.1.5变量及其初始化 51
4.1.6CRuntimeLibrary 52
4.1.7编译时和运行时的不同 52
4.1.8编译单元和独立编译技术 54
4.2基本数据类型和内存映像 54
4.3类型转换 56
4.3.1隐式转换 56
4.3.2强制转换 58
4.4标识符 60
4.5转义序列 61
4.6运算符 62
4.7表达式 63
4.8基本控制结构 65
4.9选择(判断)结构 65
4.9.1布尔变量与零值比较 66
4.9.2整型变量与零值比较 67
4.9.3浮点变量与零值比较 67
4.9.4指针变量与零值比较 69
4.9.5对if语句的补充说明 70
4.9.6switch结构 70
4.10循环(重复)结构 71
4.10.1for语句的循环控制变量 72
4.10.2循环语句的效率 73
4.11结构化程序设计原理 78
4.12goto/continue/break语句 79
4.13示例 80
第5章C++/C常量 85
5.1认识常量 85
5.1.1字面常量 85
5.1.2符号常量 86
5.1.3契约性常量 87
5.1.4枚举常量 87
5.2正确定义符号常量 87
5.3const与#define的比较 88
5.4类中的常量 89
5.5实际应用中如何定义常量 90
第6章C++/C函数设计基础 95
6.1认识函数 95
6.2函数原型和定义 96
6.3函数调用方式 97
6.4认识函数堆栈 99
6.5函数调用规范 100
6.6函数连接规范 101
6.7参数传递规则 102
6.8返回值的规则 104
6.9函数内部实现的规则 107
6.10存储类型及作用域规则 109
6.10.1存储类型 109
6.10.2作用域规则 110
6.10.3连接类型 111
6.11递归函数 113
6.12使用断言 116
6.13使用const提高函数的健壮性 118
6.13.1用const修饰函数的参数 118
6.13.2用const修饰函数的返回值 119
第7章C++/C指针.数组和字符串 121
7.1指针 121
7.1.1指针的本质 121
7.1.2指针的类型及其支持的运算 123
7.1.3指针传递 125
7.2数组 126
7.2.1数组的本质 126
7.2.2二维数组 128
7.2.3数组传递 129
7.2.4动态创建.初始化和删除数组的方法 131
7.3字符数组.字符指针和字符串 133
7.3.1字符数组.字符串和‘\0’的关系 133
7.3.2字符指针的误区 134
7.3.3字符串拷贝和比较 134
7.4函数指针 135
7.5引用和指针的比较 137
第8章C++/C高级数据类型 141
8.1结构(Struct) 141
8.1.1关键字struct与class的困惑 141
8.1.2使用struct 142
8.1.3位域 145
8.1.4成员对齐 147
8.2联合(Union) 159
8.3枚举(Enum) 161
8.4文件 163
第9章C++/C编译预处理 165
9.1文件包含 165
9.1.1内部包含卫哨和外部包含卫哨 165
9.1.2头文件包含的合理顺序 166
9.2宏定义 166
9.3条件编译 169
9.3.1#if.#elif和#else 169
9.3.2#ifdef和#ifndef 170
9.4#error 171
9.5#pragma 171
9.6#和##运算符 171
9.7预定义符号常量.. 172
第10章C++/C文件结构和程序版式 175
10.1程序文件的目录结构 175
10.2文件的结构 176
10.2.1头文件的用途和结构 176
10.2.2版权和版本信息 177
10.2.3源文件结构 178
10.3代码的版式 178
10.3.1适当的空行 178
10.3.2代码行及行内空格 179
10.3.3长行拆分 180
10.3.4对齐与缩进 181
10.3.5修饰符的位置 182
10.3.6注释风格 182
10.3.7ADT/UDT版式 183
第11章C++/C应用程序命名规则 185
11.1共性规则 185
11.2简单的Windows应用程序命名 186
第12章C++面向对象程序设计方法概述 189
12.1漫谈面向对象 189
12.2对象的概念 190
12.3信息隐藏与类的封装 191
12.4类的继承特性 195
12.5类的组合特性 200
12.6动态特性 201
12.6.1虚函数 202
12.6.2抽象基类 202
12.6.3动态绑定 205
12.6.4运行时多态 207
12.6.5多态数组 208
12.7C++对象模型 215
12.7.1对象的内存映像 215
12.7.2隐含成员 224
12.7.3C++编译器如何处理成员函数 225
12.7.4C++编译器如何处理静态成员 225
12.8小结 226
第13章对象的初始化.拷贝和析构 229
13.1构造函数与析构函数的起源 229
13.2为什么需要构造函数和析构函数 230
13.3构造函数的成员初始化列表 232
13.4对象的构造和析构次序 234
13.5构造函数和析构函数的调用时机 235
13.6构造函数和赋值函数的重载 236
13.7示例:类String的构造函数和析构函数 238
13.8何时应该定义拷贝构造
函数和拷贝赋值函数 239
13.9示例:类String的拷贝构造函数和拷贝赋值函数 240
13.10用偷懒的办法处理拷贝构造函数和拷贝赋值函数 242
13.11如何实现派生类的基本函数 243
第14章C++函数的高级特性 247
14.1函数重载的概念 247
14.1.1重载的起源 247
14.1.2重载是如何实现的 247
14.1.3当心隐式类型转换导致重载函数产生二义性 249
14.2成员函数的重载.覆盖与隐藏 250
14.2.1重载与覆盖 250
14.2.2令人迷惑的隐藏规则 251
14.2.3摆脱隐藏 253
14.3参数的默认值 254
14.4运算符重载 255
14.4.1基本概念 255
14.4.2运算符重载的特殊性 256
14.4.3不能重载的运算符 257
14.4.4重载++和-- 257
14.5函数内联 259
14.5.1用函数内联取代宏 259
14.5.2内联函数的编程风格 260
14.5.3慎用内联 261
14.6类型转换函数 261
14.7const成员函数 264
第15章C++异常处理和RTTI 267
15.1为什么要使用异常处理 267
15.2C++异常处理 268
15.2.1异常处理的原理 268
15.2.2异常类型和异常对象 269
15.2.3异常处理的语法结构 270
15.2.4异常的类型匹配规则 272
15.2.5异常说明及其冲突 272
15.2.6当异常抛出时局部对象如何释放 273
15.2.7对象构造和析构期间的异常 273
15.2.8如何使用好异常处理技术 275
15.2.9C++的标准异常 278
15.3虚函数面临的难题 278
15.4RTTI及其构成 280
15.4.1起源 280
15.4.2typeid运算符 281
15.4.3dynamic_cast<>运算符 283
15.4.4RTTI的魅力与代价 285
第16章内存管理 287
16.1内存分配方式 287
16.2常见的内存错误及其对策 288
16.3指针参数是如何传递内存的 289
16.4free和delete把指针怎么啦 291
16.5动态内存会被自动释放吗 292
16.6杜绝“野指针” 292
16.7有了malloc/free为什么还要new/delete 293
16.8malloc/free的使用要点 295
16.9new有3种使用方式 296
16.9.1plainnew/delete 296
16.9.2nothrownew/delete 297
16.9.3placementnew/delete 297
16.10new/delete的使用要点 300
16.11内存耗尽怎么办 301
16.12用对象模拟指针 302
16.13泛型指针auto_ptr 305
16.14带有引用计数的智能指针 306
16.15智能指针作为容器元素 310
第17章学习和使用STL 323
17.1STL简介 323
17.2STL头文件的分布 324
17.2.1容器类 324
17.2.2泛型算法 325
17.2.3迭代器 325
17.2.4数学运算库 325
17.2.5通用工具 325
17.2.6其他头文件 326
17.3容器设计原理 326
17.3.1内存映像 326
17.3.2存储方式和访问方式 327
17.3.3顺序容器和关联式容器的比较 328
17.3.4如何遍历容器 331
17.3.5存储空间重分配问题 332
17.3.6什么样的对象才能作为STL容器的元素 333
17.4迭代器 334
17.4.1迭代器的本质 334
17.4.2迭代器失效及其危险性 338
17.5存储分配器 346
17.6适配器 347
17.7泛型算法 350
17.8一些特殊的容器 354
17.8.1string类 354
17.8.2bitset并非set 355
17.8.3节省存储空间的vector 357
17.8.4空容器 358
17.9STL容器特征总结 360
17.10STL使用心得 362
附录AC++/C试题 365
附录BC++/C试题答案与
评分标准 369
附录C大学十年 375
附录D《大学十年》后记 393
附录E术语与缩写解释 395
参考文献... 397

高质量程序设计指南——C++/C语言(第3版) 参与书评    查看书评(共0条)

返回顶部

收藏本站
您最近浏览过的商品