搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
C++程序员教程
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787121099052
  • 作      者:
    (美)Paul J. Deitel, (美)Harvey M. Deitel著
  • 出 版 社 :
    电子工业出版社
  • 出版日期:
    2010
收藏
编辑推荐
    包含240个实例程序<br>    C++和面向对象程序开发的程序员指南<br>    为具备高级语言编程经验的程序员而编写,《C++程序员教程》采用Deitel知名的活代码方法,深入讲解C++语言和C++标准类库。书中给出的概念以经过全面测试的程序为背景,这些程序包含语法阴影、代码高亮、代码遍历和结果输出等特点。书中包含240个C++程序,超过15000行代码,还包括数百个编程提示,帮助读者建立强壮的程序。<br>    《C++程序员教程》从采用尽早接触类的C++介绍开始,然后立即讲解更高级的主题,包括模板、异常处理、标准模板类库(STL)以及从Boost类库中精选的特性。读者一定会喜欢书中经典的面向对象编程内容,其中的OOD/UML 2 ATM案例研究给出了完整的C++代码。学完《C++程序员教程》之后,读者就具备了建立面向对象C++程序所需的一切技能。<br>    Paul J.Deitel先生和Harvey M.Deitel博士是Deitel&Associates公司的创始人,这是一家国际知名的写作编程语言图书、进行企业培训以及Internet业务发展的公司。两位作者已经出版过许多全球畅销的编程语言专业图书和教材,使数百万的读者得以精通C++、C、Java、c#、Visual Basic、Visual c++、XML、Perl、Python以及Internet和Web!编程。<br>    “程序员教程”系列是为实用的编程技术而设计的,这个系列主要关注新出现的技术,包括C++、·NET、Java、Web服务、Internet、Web开发,等等。<br>    登录www.deitei.com<br>    获取关于全球客户Deitel Dive-Into系列企业培训课程的信息(或者写信给deitel@deitel.com)<br>    下载代码例子<br>    查看正在不断扩充的关于编程、Web 2.0以及与软件相关的资源中心列表<br>    获取《C++程序员教程》的更新信息,订阅免费的DeiteI Buzz Online电子邮件新闻简报(www.deitei.com/newsletter/subscribe.html)<br>    阅读存档的Deitel Buzz Online内容<br>    类、对象、封装、继承、多态<br>    集成的OOP案例研究:Time类、GradeBook类和Employee类<br>    95页行业标准的OOD/UML 2 ATM案例研究<br>    标准模板类库(STL):容器、迭代器和算法<br>    I/O、类型、控制语句、函数<br>    数组、向量、指针、引用<br>    字符串类、C风格的字符串<br>    运算符重载、模板<br>    异常处理、文件<br>    位操作和字符操作<br>    Boost类库和C++的未来<br>    GNU和Visual C++调试器<br>    更多……<br>    指针 集成的OOP案例研究<br>    模板 Boost类库和C++的未来<br>    Vector GUN和Visual C++调试器<br>    异常处理 OOD/UML 2 ATM案例研究<br>    C++标准类库 标准模板类库(STL):窗口、迭代器和算法
展开
作者简介
    Paul J.Deitel,Deitel&Associates公司CEO兼CTO,毕业于麻省理工学院Sloan管理学院,主修信息技术。通过Deitel&Associates公司,他向行业客户、政府机关和军队提供C++、Java、C、C#和Visual Basic课程,这些客户包括Cisco、IBM、Sun Microsystems、Dell、Lucent Technologies、Fidelity、NASA、White Sands MissileRange、the National Severe Storm Laboratory、Rogue Wave Software、Boeing、Stratus、Hyperion Software、Adra Systems、Entergy、CableData Systems、Nortel Networks、Puma、iRobot、Invensys,等等。Paul曾为计算机协会波士顿分会讲授Java和C++,还曾为墨西哥Monterrey的ITESM讲授过.NET技术。他和他的父亲Harvey M.Deitel博士,是全球畅销的编程语言教材的作者。<br>    HarveyM.Deitel博士,Deitel&Associates公司的主席和首席战略官,具有47年学术和业界的工作经验。Deitel博士在麻省理工学院获得学士和硕士学位,在波士顿大学获得博士学位。他具有20年的大学教学经验,在与儿子Paul J.Deitel创立Deitel&AssociateS公司之前,他是波士顿大学计算机科学系主任并获得了终身任职权。Deitel父子是几十本图书和多媒体软件包的共同作者,并且他们还在撰写着更多的作品。他们的教材已经赢得了国际声誉,并被翻译成了日文、德文、俄文、西班牙文、繁体中文、简体中文、朝文、法文、波兰文、意大利文、葡萄牙文、希腊文、乌尔都文和土耳其文。Deitel博士为许多大公司、学术机构、政府机关和军队提供了数百场的专业培训。
展开
内容介绍
    《C++程序员教程》是一本C++编程方面的优秀图书,全面介绍了C++编程的原理和方法,涉及类与对象、控制语句、函数与递归、数组与类模板vector、指针与基于指针的字符串、类、运算符重载、继承、多态、模板、流输入/输出、异常处理、文件处理、字符串流处理、STL Boost类库、TR1、C++Ox等,可以说《C++程序员教程》是学习C++编程语言最好的教程。附录中还分别给出了完整的ATM案例研究的代码以及GNU、Visual Studio调试器的用法。书中240个活代码例子,对学习C++非常有帮助。<br>    《C++程序员教程》适合软件设计人员学习C++编程,也可作为高等院校相关专业的编程语言教材。
展开
精彩书评
    优秀的“对象第一”的C++图书。通过例子讲解了大量内容,加上选读的UML案例研究,使得它们能融入后续的软件工<br>    程项目中。<br>    ——Gavin Osborne,SasKatchewan Institute of Applied Science and Technology<br>    尽早引入UML的想法非常好。<br>    ——Raymond stephenson Microsoft<br>    框图的使用恰到好处,尤其是讲解调用栈和递归函数时的那些框图。<br>    ——Amar Raheja,California State Polytechnic University,Pomona<br>    对指针的讲解非常棒,也许是我见过的最好的。<br>    ——Anne B.Horton,Lockhecd Martin<br>    对多态以及编译器如何在“内幕”实现多态的讲解不错。<br>    ——Ed James-Beckham,Borland<br>    讲解Boost/C++Ox的那一章使读者能熟悉并迅速懂得关于内存管理和正则表达式类库的知识,还能激发读者了解即将被<br>    标准化的c++特性的欲望。<br>    ——Ed Brey Kohler Co.<br>    对标准模板类库(STL)的介绍真好。这是关于c++编程最好的书。<br>    ——Eichard Albright,Goldey-Beacom College<br>    当读者认为只是在学习一个主题时,会突然发现所学远非这一点。<br>    ——Chad Willwerth,University of Washington Tacoma<br>    我所见过的讲解最全面的C++图书。用丰富的真实例子,涵盖了软件开发的整个生命周期。代码例子非此寻常!<br>    ——Terrell Hull,Logicalis Integration Soutions
展开
精彩书摘
    开源软件(open source software)。它是开发软件的一种形式,与早年的专利式私有软件的开发形成对照。通过开源软件的开发,个人和公司付出他们的努力,开发、维护并完善软件,以便根据自己的目的与其他人交换使用软件的权利,通常可免费使用。与私有软件相比,开源代码通常会得到更多人的审查,因此能够更快地消除软件中的bug。开源还鼓励更多的创新。最近,Sun公司宣布了对Java进行开源。在开源社区中经常能见到的一些机构是Eclipse Foundation(对于c++和Java软件,Eclipse IDE是流行的开发环境)、Mozilla Foundation(Firefox浏览器的创建者)、Apache Software Foundation(Apache Web浏览器的创建者)和SourceForge(它提供管理开源工程的工具,当前有超过150000个开源工程正在开发之中)。<br>    Linux是一种开源操作系统,也是开源运动最大的成功者之一。MySQL是一个开源数据库管理系统。PHP是最流行的开源服务器端脚本语言,用于开发基于Internet的程序。IAMP是一组开源技术的缩写,许多开发人员用这些技术来构建Web程序。LAMP表示Linux、Apache、MySQL和PHP(或Perl、Python,它们是另外两种用途类似的语言)。<br>    软件已经被当作普通的产品对待,大多数软件就是按照产品的形式提供的。如果用户希望运行一个程序,就需要从软件厂商那里购买软件包。然后,用户需在计算机上安装这个软件,并在需要时运行它。当软件有新的版本时,就需升级软件,这常常要花不少钱。对机构而言,如果有不同配置的成千上万个系统必须维护,则这个过程可能非常麻烦。利用“软件即服务”(Software as a Service,SaaS),软件可在Intemet中的某个服务器上运行。当更新了这些服务器后,全球范围内的所有客户都可看到这些新的功能,从而避免了本地安装的需求。可以通过浏览器访问服务,它们具有非常好的可移植性,因此能够在世界上任何地方的不同类型的计算机上运行同一个程序。Salesforce.com、Google以及Microsoft的Office Live和Windows Live都提供SaaS。
展开
目录
第1章 基本介绍<br>1.1 简介<br>1.2 C和C++的历史<br>1.3 C++标准类库<br>1.4 重要的软件趋势:对象技术<br>1.5 典型的C++开发环境<br>1.6 关于C++和本书的说明<br>1.7 测试驱动的C++程序<br>1.8 软件技术<br>1.9 C++的未来:开源Boost类库,TR1和C++0x<br>1.10 软件工程案例研究:对象技术和UML介绍<br>1.11 小结<br>1.12 Web资源<br><br>第2章 C++编程入门<br>2.1 简介<br>2.2 第一个C++程序:输出一行文本<br>2.3 修改第一个C++程序<br>2.4 另一个C++程序:整数相加<br>2.5 算术运算<br>2.6 判断:相等运算符和关系运算符<br>2.7 (选读)软件工程案例研究:分析ATM需求规范<br>2.8 小结<br><br>第3章 简要介绍类和对象<br>3.1 简介<br>3.2 类、对象、成员函数和数据成员<br>3.3 本章的例子概述<br>3.4 定义带成员函数的类<br>3.5 定义带参数的成员函数<br>3.6 数据成员、set函数和get函数<br>3.7 用构造函数初始化对象<br>3.8 将类放入单独的文件中,提高复用性<br>3.9 分离接口与实现<br>3.10 用set函数验证数据<br>3.11 (选读)软件工程案例研究:确定ATM需求规范中的类<br>3.12 小结<br><br>第4章 控制语句(1)<br>4.1 简介<br>4.2 控制结构<br>4.3 if选择语句<br>4.4 if...else双选择语句<br>4.5 while循环语句<br>4.6 计数器控制循环<br>4.7 标记控制循环<br>4.8 嵌套控制语句<br>4.9 赋值运算符<br>4.10 增量和减量运算符<br>4.11 (选读)软件工程案例研究:确定ATM系统的类属性<br>4.12 小结<br><br>第5章 控制语句(2)<br>5.1 简介<br>5.2 计数器控制循环的实质<br>5.3 for循环语句<br>5.4 使用for语句的例子<br>5.5 do...while循环语句<br>5.6 switch多选择语句<br>5.7 break与continue语句<br>5.8 逻辑运算符<br>5.9 相等运算符(==)与赋值运算符(=)<br>5.10 (选读)软件工程案例研究:确定ATM系统中对象的状态和活动<br>5.11 小结<br><br>第6章 函数与递归<br>6.1 简介<br>6.2 C++中的程序组件<br>6.3 数学类库函数<br>6.4 有多个参数的函数定义<br>6.5 函数原型与实参强制性<br>6.6 C++标准类库头文件<br>6.7 案例研究:随机数生成<br>6.8 案例研究:机会游戏,引入枚举<br>6.9 存储类<br>6.10 作用域规则<br>6.11 函数调用栈与活动记录<br>6.12 带空参数表的函数<br>6.13 内联函数<br>6.14 引用与引用参数<br>6.15 默认实参<br>6.16 一元作用域分解操作符<br>6.17 函数重载<br>6.18 函数模板<br>6.19 递归<br>6.20 使用递归的例子:Fibonacci序列<br>6.21 递归与迭代的比较<br>6.22 (选读)软件工程案例研究:确定ATM系统的类操作<br>6.23 小结<br><br>第7章 数组与类模板vector<br>7.1 简介<br>7.2 数组<br>7.3 声明数组<br>7.4 数组使用举例<br>7.5 将数组传入函数<br>7.6 案例研究:GradeBook类用数组保存成绩<br>7.7 对数组进行线性搜索<br>7.8 对数组进行插入排序<br>7.9 多维数组<br>7.10 案例研究:GradeBook类使用二维数组<br>7.11 C++标准类库的类模板vector介绍<br>7.12 (选读)软件工程案例研究:ATM系统中对象间的协作<br>7.13 小结<br><br>第8章 指针与基于指针的字符串<br>8.1 简介<br>8.2 指针变量的声明与初始化<br>8.3 指针运算符<br>8.4 利用指针将实参按引用传递给函数<br>8.5 使用常量指针<br>8.6 使用按引用传递的选择排序<br>8.7 sizeof运算符<br>8.8 指针表达式与指针运算<br>8.9 指针与数组的关系<br>8.10 指针数组<br>8.11 案例研究:洗牌与发牌模拟<br>8.12 函数指针<br>8.13 基于指针的字符串处理介绍<br>8.14 小结<br><br>第9章 类:深入探究(1)<br>9.1 简介<br>9.2 Time类案例研究<br>9.3 类的作用域与访问类成员<br>9.4 分离接口与实现<br>9.5 访问函数和工具函数<br>9.6 Time类案例研究:带默认实参的构造函数<br>9.7 析构函数<br>9.8 何时调用构造函数和析构函数<br>9.9 Time类案例研究:微妙的陷阱——返回私有数据成员的引用<br>9.10 默认的逐成员赋值<br>9.11 (选读)软件工程案例研究:开始编程ATM系统的类<br>9.12 小结<br><br>第10章 类:深入探究(2)<br>10.1 简介<br>10.2 常量对象与常量成员函数<br>10.3 合成:作为类成员的对象<br>10.4 友元函数与友元类<br>10.5 使用this指针<br>10.6 用new和delete操作符实现动态内存管理<br>10.7 静态类成员<br>10.8 数据抽象与信息隐藏<br>10.9 容器类与迭代器<br>10.10 代理类<br>10.11 小结<br><br>第11章 运算符重载:字符串与数组对象<br>11.1 简介<br>11.2 运算符重载基础<br>11.3 运算符重载的限制<br>11.4 作为类成员的运算符函数与全局函数的比较<br>11.5 重载流插入与流提取运算符<br>11.6 重载一元运算符<br>11.7 重载二元运算符<br>11.8 案例研究:Array类<br>11.9 类型之间的转换<br>11.10 案例研究:String类<br>11.11 重载++和——<br>11.12 案例研究:Date类<br>11.13 标准类库的string类<br>11.14 用explicit声明构造函数<br>11.15 小结<br><br>第12章 面向对象编程:继承<br>12.1 简介<br>12.2 基类与派生类<br>12.3 保护成员<br>12.4 基类与派生类的关系<br>12.5 派生类中的构造函数和析构函数<br>12.6 公有、保护和私有继承<br>12.7 继承与软件工程<br>12.8 小结<br><br>第13章 面向对象编程:多态<br>13.1 简介<br>13.2 多态举例<br>13.3 继承层次中对象间的关系<br>13.4 类型字段与switch语句<br>13.5 抽象类与纯虚函数<br>13.6 案例研究:使用多态的工资系统<br>13.7 (选读)多态、虚函数和动态绑定的“内幕”<br>13.8 案例研究:利用多态以及使用向下强制转换、dynamiccast、typeid和typeinfo运行时类型信息的工资系统<br>13.9 虚析构函数<br>13.10 (选读)软件工程案例研究:在ATM系统中加入继承<br>13.11 小结<br><br>第14章 模板<br>14.1 简介<br>14.2 函数模板<br>14.3 重载函数模板<br>14.4 类模板<br>14.5 类模板的非类型参数和默认类型<br>14.6 模板与继承<br>14.7 模板与友元<br>14.8 模板与静态成员<br>14.9 小结<br><br>第15章 流输入/输出<br>15.1 简介<br>15.2 流<br>15.3 流输出<br>15.4 流输入<br>15.5 使用read、write和gcount的非格式化I/O<br>15.6 流操作子简介<br>15.7 流格式状态与流操作子<br>15.8 流的错误状态<br>15.9 将输出流与输入流连接<br>15.10 小结<br><br>第16章 异常处理<br>16.1 简介<br>16.2 异常处理概述<br>16.3 例子:处理除零错误<br>16.4 何时使用异常处理<br>16.5 重抛异常<br>16.6 异常规范<br>16.7 处理意外的异常<br>16.8 堆栈解退<br>16.9 构造函数、析构函数与异常处理<br>16.10 异常与继承<br>16.11 处理new失败<br>16.12 autoptr类与动态内存分配<br>16.13 标准类库中的异常层次<br>16.14 其他的错误处理技术<br>16.15 小结<br><br>第17章 文件处理<br>17.1 简介<br>17.2 数据层次<br>17.3 文件和流<br>17.4 创建顺序文件<br>17.5 从顺序文件读取数据<br>17.6 更新顺序文件<br>17.7 随机访问文件<br>17.8 创建随机访问文本文件<br>17.9 向随机访问文件写随机数据<br>17.10 从随机访问文件顺序读取<br>17.11 案例研究:交易处理程序<br>17.12 对象序列化概述<br>17.13 小结<br><br>第18章 string类与字符串流处理<br>18.1 简介<br>18.2 字符串的赋值与拼接<br>18.3 字符串比较<br>18.4 子串<br>18.5 字符串交换<br>18.6 字符串的特性<br>18.7 搜索字符串中的子串和字符<br>18.8 替换字符串中的字符<br>18.9 将字符插入到字符串中<br>18.10 转换成C风格的char *字符串<br>18.11 迭代器<br>18.12 处理字符串流<br>18.13 小结<br><br>第19章 位、字符、C字符串和结构<br>19.1 简介<br>19.2 结构定义<br>19.3 初始化结构<br>19.4 将结构用于函数<br>19.5 typedef定义<br>19.6 例子:高性能的洗牌与发牌模拟<br>19.7 位运算符<br>19.8 位段<br>19.9 字符处理类库<br>19.10 基于指针的字符串转换函数<br>19.11 基于指针的字符串处理类库中的搜索函数<br>19.12 基于指针的字符串处理类库中的内存函数<br>19.13 小结<br><br>第20章 标准模板类库(STL)<br>20.1 标准模板类库(STL)介绍<br>20.2 序列容器<br>20.3 关联容器<br>20.4 容器适配器<br>20.5 算法<br>20.6 bitset类<br>20.7 函数对象<br>20.8 小结<br>20.9 STL Web资源<br><br>第21章 Boost类库、Technical Report 1和C++0x<br>21.1 简介<br>21.2 Deitel在线C++以及相关的资源中心<br>21.3 Boost类库<br>21.4 向Boost添加新类库<br>21.5 安装Boost类库<br>21.6 Technical Report 1(TR1)中的Boost类库<br>21.7 正则表达式与Boost.Regex类库<br>21.8 智能指针与Boost.Smartptr<br>21.9 Technical Report 1<br>21.10 C++0x<br>21.11 核心的语言变化<br>21.12 小结<br><br>第22章 其他主题<br>22.1 简介<br>22.2 constcast运算符<br>22.3 名字空间<br>22.4 运算符关键字<br>22.5 mutable类成员<br>22.6 类成员的指针(.*和->*)<br>22.7 多重继承<br>22.8 多重继承与虚拟基类<br>22.9 小结<br><br>附录A 运算符的优先级和结合性<br>附录B ASCII字符集<br>附录C 基础类型<br>附录D 预处理器<br>附录E ATM案例研究代码<br>附录F UML 2的其他框图类型<br>附录G 使用Visual Studio调试器<br>附录H 使用GNU C++调试器<br>参考文献<br>索引
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证