出版时间:2008-7 出版社:机械工业出版社 作者:梁勇 页数:490
Tag标签:无
前言
设计高效稳定、具有专业水准的计算机软件,需要具备多方面的能力,例如,熟悉应用领域的相关知识,能合理地选择和设计各种数据结构和算法,精通软件工程相关知识和方法等。但无论如何,熟练的编程技巧仍是必备的基础能力。因为,无论多么丰富的领域知识,多么高效的数据结构和算法,多么良好的软件架构,最终都需要转化为计算机程序,才能被计算机所理解,进而指挥计算机按照人类的设想求解问题。在计算机发展的早期,人们必须通过在纸带上打孔的方式编写计算机程序。高级程序设计语言的出现,大大降低了人类与计算机沟通的难度。但计算机还未发展到能理解人类语言、动作、表情的程度,人们还是需要学习程序设计语言的语法和程序设计技巧,才能高效地与计算机沟通。c++是在c语言的基础上发展起来的,它继承了c语言的诸多优点。而面向对象程序设计特性的加入,又大大提高了程序开发、维护的效率。因此,十几年来,c++一直是使用最广泛的计算机高级程序设计语言之一。 本书的作者Y.Daniel Liang教授是国际知名的计算机教育家和专业书籍作家。多年来一直致力于教学方法的改革和教材的撰写,已与Prentice Hall公司合作出版了30余本计算机科学领域的专业书籍。这些书籍行销全世界,特别是Liang Java系列丛书,是最畅销的Java教材,被世界各地的高等院校广泛采用。本书是他在c++领域奉献给广大读者的最新力作。 本书分为三部分。第一部分介绍基础程序设计方法,包括基本数据类型和运算、分支语句、循环、函数、数组、指针和c字符串以及递归等内容。第二部分介绍面向对象程序设计方法,主要包括对象和类的基本概念、对象和类的深入内容、继承和多态、文件输入和输出、运算符重载及异常处理等内容。第三部分介绍了数据结构方面的基础知识,包括模板、链表、栈、队列、树、堆、优先队列、算法效率、排序算法、STL容器、STL算法等内容。 “基础先行方法”是本书区别于其他同类教材的最大特色。这种方法是指,并不在教学开始之初向学生介绍面向对象程序设计方法,而是首先介绍分支语句、循环、函数、数组等基础的程序设计方法,随后再引入面向对象程序设计方法。这种方法有利于学生循序渐进地掌握c++语言的程序设计技巧,已被国际计算机教育学届广泛接受。本书的另一特色是“清晰简明”的撰写风格,通过简短的、吸引人的例子来清晰地阐述概念,更容易提高学生学习的兴趣。 如果你还是个计算机程序设计的门外汉,本书可以将你引入这个广阔而引人入胜的领域;如果你对c++程序设计已经有所了解,本书也是一本很好的参考书籍。当然,如果你是一名计算机专业的在校学生,本书将是一本不可多得的高级语言程序设计课程的教材。 参与本书翻译工作的有王刚、刘晓光和刘璟,由王刚完成全书的审校工作。因时间仓促,翻译若有不妥之处,敬请读者批评指正。
内容概要
本书保持了Liang博士系列丛书中一贯的标志性的教与学的哲学:以实例教,由实践学。通过使用他所提出的已经经过实践检验的“基础先行”的方法,Liang博士在本书中通过大量实例阐明了基本的C++特性,使得学生可以通过实践来更有效地进行学习。 在引入面向对象程序设计思想之前,Liang博士使用清晰简明的语言介绍了C++语言的基础知识和基本的程序设计技术,如循环、逐步求精等。这些概念都是使用简短且吸引人的实例来进行阐明的。他还在实例研究中给出了一些较大规模的实例,并附以整体的分析讨论和详细的逐行注解。 本书首先帮助学生循序渐进地学习所有必需和重要的基本概念,然后再进入到面向对象程序设计方法的学习,最终掌握构建具有异常处理和输入输出功能的有意义的应用程序的方法。贯穿全书的实例和练习都以问题求解为中心,力图培养学生开发可重用组件并用之创建实际项目的意识。 本书特点 ●大量的表格和图示。 ●较早地介绍编写程序的方法——从第2章开始,学生就能编写简短、有趣的游戏程序。 ●使用UML描述类。 ●大量的补充资料——安装和配置C++开发环境、IDE简明教程、补充的C++特性等,这些补充资料便于教师设计自己的课程内容。
书籍目录
译者序前言第一部分 程序设计基础 第1章 计算机、程序和C++语言简介 第2章 基本数据类型和运算 第3章 分支语句 第4章 循环 第5章 函数 第6章 数组 第7章 指针和C字符串 第8章 递归第二部分 面向对象程序设计 第9章 对象和类 第10章 对象和类的更多内容 第11章 继承和多态 第12章 文件输入输出 第13章 运算符重载 第14章 异常处理 第三部分 数 据 结 构 第15章 模板 第16章 链表、栈和队列 第17章 树、堆和优先队列 第18章 算法效率和排序 第19章 STL容器 第20章 STL算法 附录
章节摘录
第1章 计算机、程序和C++语言简介 目标 回顾计算机、程序和操作系统的基础知识(1.2~1.4节)。 (可选)介绍二进制、十进制和十六进制(1.5节)。 了解C++语言的历史(1.6节)。 编写一个简单的C++程序(1.7节)。 了解C++程序开发周期(1.8节)。 (可选)使用Visual C++开发C++程序(1.9节)。 (可选)使用Dev-C++开发C++程序(1.10节)。 (可选)在Windows平台使用命令行工具开发C++程序(1.11节)。 (可选)在UNIX平台使用命令行工具开发C++程序(1.12节)。 1.1 引言 我们使用字处理器撰写文档,使用浏览器畅游Internet,使用电子邮件程序在Internet上发送电子邮件。字处理器、浏览器和电子邮件程序都是在计算机上运行的软件,而软件是使用程序设计语言开发出来的,C++就是一种流行的而且功能十分强大的程序设计语言。大多数应用软件(如字处理器、浏览器和电子邮件程序)都是使用C++开发的。本书将带领读者学习使用C++这个功能强大的程序设计语言开发程序。 在正式进入学习之前,我们先来回顾一下计算机、程序及操作系统的基础知识,同时熟悉一下数制。如果你已经很熟悉CPU、内存、磁盘、操作系统以及程序设计语言等术语,可以跳过1.2-1.4节。还可略过1.5节,当遇到有关二进制数和十六进制数的问题时再查阅即可。 1.2 什么是计算机 所谓计算机,就是一台能存储并处理数据的电子设备,它包含硬件(hardware)和软件(software)两部分。一般而言,计算机的硬件是我们可以看到的物理特征,而软件是不可见的指令,它控制硬件,使之完成特定的任务。所谓计算机程序设计,就是编写让计算机执行的指令。原则上,你无需了解计算机硬件,就可以学习程序设计语言,但如果对硬件知识有所了解的话,能帮助你更好地理解程序指令会产生什么效果。本节将概述计算机硬件的组成及各组成部件的功能。
图书封面
图书标签Tags
无
评论、评分、阅读与下载