《高级语言C++程序设计(第一版)-第七章.》.pdfVIP

《高级语言C++程序设计(第一版)-第七章.》.pdf

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《高级语言C++程序设计(第一版)-第七章.》.pdf

7.1 设计一个栈(stack)类 173 第七章 类与对象 ( ) 类 (class)的概念是面向对象程序设计的核心概念。把数据和对象的操作 和处理封装在一个程序模块中的方法,可以说是人们积几十年程序设计实践的 经验总结。把程序以类的形式组织成若干模块,使其获得了最佳的结构特性, 类的概念的引入使程序设计技术发生了革命性的转变。从结构程序设计 (SP ) 中以函数作为程序的基本模块转变为面向对象程序设计 (OOP )中,以类作为 程序的基本模块,这一变化使程序设计技术出现了质的飞跃。 类的概念抓住了程序的本质。程序的基本元素是数据,而函数是围绕数据 进行的处理和操作。抓住了数据这个“纲”,程序中关系复杂的各种函数就变得 脉络清楚,可以随着相应的数据组合成类。类的使用使得: ·程序设计本身更有条理了; ·程序的可读性更好了; ·程序设计的过程真正像是机器部件的组装; ·程序由多个程序员设计变得方便和自然; ·由于程序的零部件化,使得程序的可重用性变成切实可行的事情,等等。 引入了类 (class )和对象 (object)的概念,就使得C++语言与C 语言相 比发生了本质的变化。 class 和object 的概念在C++编程中所起的作用,可以从两个角度来分析。 第一, 从程序的组织角度,C++通过class 把数据以及对这些数据进行处 理和运算的函数封装为互相关联的程序模块,这与C 和Pascal 等语言把程序划 分为具有互相调用关系的函数或过程是不同的。 第二, 从数据类型的角度,C++通过class 引入了抽象数据类型的概念, 一个由数据成员和函数成员组成的类就是一种新的数据类型。C++语言为用户 提供了设计反映不同应用背景特征的千变万化的数据类型的可能性。 在C++程序中,程序员可以根据需要定义多种多样的数据类型: stack(栈),queue( 队列),set( 集合),Bool(布尔类型),vector( 向量),matrix(矩阵) 等。 其它通用语言可能设置的类型,C++程序员都可以方便地定义。同时与具 体问题密切结合的类型也出现在C++程序中,如: 174 第七章 类与对象 windows( 窗口),menu( 菜单),student( 学生),employee( 雇员),car( 小汽 车),elevator( 电梯), … … 7.1设计一个栈(stack)类 为了学会 OOP 方法,首先让我们看看 C++程序中类及其对象是怎样工作 的。 栈 (stack )是程序设计过程中经常碰到的一种数据结构形式,它对于数据 的存放和操作有下面这样的特点: ⑴ 它只有一个对数据进行存入和取出的端口; ⑵ 后进者先出,即最后被存入的数据将首先被取出。其形式很像一种存储 硬币的小容器,每次只可以从顶端压入一个硬币,而取出也只可从顶端进行, 即后进先出。 这样的数据存储和管理形式在一些实际的程序设计中很有用。例如,编译 系统中(这是一类比较复杂的程序),对于函数调用的处理,对于表达式计算的 处理,都是利用了栈这样的数据结构。下面就是一个关于栈的程序。 //program 7_1.cpp # includeiostream.h const int maxsize=6; enum bool{false,true}; class stack{ float data[maxsize]; int top; public: stack(void); ~stack(void); bool empty(void); void push(float a); float pop(void); }; stack::stack(void){ top=0; coutstack initialized.endl;

文档评论(0)

wyth + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档