欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C++优秀课件PPT.ppt

    • 资源ID:87438335       资源大小:365KB        全文页数:44页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++优秀课件PPT.ppt

    C+优秀课件PPT第一章第一章 概说概说C+1.0本科程在专业学习中的地位本科程在专业学习中的地位智能无线终端应用智能无线终端应用(5-7(5-7学期学期)电磁场与电磁波;电磁场与电磁波;数字图象处理;数字图象处理;信号检测与处理;信号检测与处理;微波技术与天线;微波技术与天线;射频电路设计原理与应用射频电路设计原理与应用。专业基础课程专业基础课程第一层次第一层次(3-5(3-5学期学期):电路原理、模拟电子技术、数字电路与数字逻辑;电路原理、模拟电子技术、数字电路与数字逻辑;第二层次第二层次(5-6(5-6学期学期):信号与系统信号与系统、数字信号处理、电子测量原理;数字信号处理、电子测量原理;第三层次第三层次(5-7(5-7学期学期):MATLAB与系统仿真与系统仿真、电子线路、电子线路CAD、DSP原理及应用原理及应用智能信息处理支持课程智能信息处理支持课程1.1.高端软件设计支持高端软件设计支持(2-4(2-4学期学期)程序设计基础程序设计基础C C;C+C+程序设计;程序设计;可视化编程与应用。可视化编程与应用。2.2.芯片级设计支持芯片级设计支持(5-7(5-7学期学期)微机原理与应用;微机原理与应用;单片机原理与应用;单片机原理与应用;嵌入式系统;嵌入式系统;专业课程设计。专业课程设计。工业信号检测系统工业信号检测系统与智能电子产品研发与智能电子产品研发(5-7(5-7学期学期)传感器原理与应用;传感器原理与应用;检测技术基础;检测技术基础;数据库开发与应用;数据库开发与应用;现代电气及现代电气及PLCPLC技术;技术;楼宇智能化技术。楼宇智能化技术。第一章第一章 概说概说C+第一章第一章 概说概说C+第一章第一章 概说概说C+第一章第一章 概说概说C+moveax,DWORDPTRa$ebp8b45fcleaeax,DWORDPTReax+eax*28d0440movecx,DWORDPTRb$ebp8b4df8addecx,ecx03c9subeax,ecx2bc1inceax40movDWORDPTRa$ebp,eax8945fc汇编语言和某个特定的机器语言:汇编语言和某个特定的机器语言:第一章第一章 概说概说C+程程序序语语言言越越低低级级,则则必必须须对对过过程程描描写写越越具具体体,指指令令也也就就越越接接近近机机器器的的硬硬件件逻逻辑辑。程程序序语语言言越越高高级级,就就越越接接近近对对问问题题的的描描述述与与表表达达,因因而而更更直直观观,容容易易被被人人们们所所理理解。解。程程序序语语言言从从低低级级到到高高级级的的发发展展,也也就就是是从从具具体体描描述述(编编程程)到到抽抽象象描描述述(编编程程),高高级级语语言言的的抽抽象象描描述述最最后都需用后都需用“语言编译器语言编译器”自动转化成机器的具体实现。自动转化成机器的具体实现。语语言言编编译译器器的的发发展展,则则是是从从简简单单到到复复杂杂的的过过程程。语语言言越越是是高高级级,描描述述越越是是抽抽象象,则则用用于于自自动动化化转转换换的的语语言言编编译译器器越越复复杂杂,以以便便人人们们对对问问题题只只需需有有个个相相对对简简单单的的描描述(编程),就能够被机器所理解。述(编程),就能够被机器所理解。第一章第一章 概说概说C+1.2 C+前史(Pre-C+history)1953年年12月月,IBM公公司司的的JohnBackus写写了了一一份份备备忘忘录录,建建议议为为IBM704设设计计一一种种全全新新的的编编程程语语言言。Backus多多年年工工作作在在计计算算机机上上,深深切切体体会会到到编编程程困困难难,他他的的目目标标是是设设计计一一种种用用于于科科学学计算的计算的“公式翻译语言公式翻译语言”。他他带带领领的的一一个个团团队队,终终于于在在1954年年完完成成了了FORTRAN语语言言的的设设计计和和实实现现。在在那那以以后后,不不同同版版本本的的FORTRAN语语言言纷纷纷纷面面世世。1966年年,美美国国统统一一了了它它的的标标准准,称称为为FORTRAN66语语言言,此此后后,又又被被更更新新为为FORTRAN77和和FORTRAN90。FORTRAN语语言言的的后后继继版版本本要要兼兼容容以以前前大大量量的的FORTRAN老老程程序序,这这一一负负担担阻阻碍碍了了它它,无无法法革革新新成成现现代代编编程程语语言言特特征征。但但不不管管怎怎样样,FORTRAN语语言言一一直直活活跃跃了了40多多年年,Backus为为此此摘摘取取了了1977年年度的度的“图灵奖图灵奖”。第一章第一章 概说概说C+代数语言代数语言ALGOL1958年年,一一个个国国际际商商业业和和学学术术计计算算机机科科学学家家组组成成的的委委员员会会在在瑞瑞士士开开会会,探探讨讨改改进进FORTRAN问问题题,并并尝尝试试设设计计一一种种标标准准化化的的计计算算机机语语言言。1960年年,该该委委员员会会在在1958年年讨讨论论的的基基础础上上,定定义义了了一一种种新新的的语语言言国国际际代代数数语语言言ALGOL60,首首次次引引入入了了局局部部变变量量和和递递归归概概念念,在在数数学学表表达达和和算算法法描描述述上上比比FORTRAN更更出出色色,而而且且它它不不是是解解释释执执行行,而而是是编编译译后后运运行行,比比FORTRAN程程序序效效率率更更高高。但但由由于于ALGOL语语言言的的设设计计要要求求是是独独立立于于机机器器的的,所所以以就就面面临临许许多多语语言言实实现现方方面面的的技技术术问问题题,致致使使ALGOL语语言言无无法法流流行行。但但它它却却演变为其他编程语言设计的概念基础。演变为其他编程语言设计的概念基础。第一章第一章 概说概说C+科科学学计计算算借借助助于于FORTRAN获获得得快快速速进进展展的的时时候候,还还没没有有一一种种适适用用于于商商业业计计算算的的语语言言。美美国国国国防防部部注注意意到到了了这这种种情情况况,1959年年5月月,五五角角大大楼楼委委托托GraceMurrayHopper博博士士领领导导一一个个委委员员会会,开开始始设设计计面面向向商商业业的的通通用用语语言言COBOL。COBOL最最重重要要的的特特征征是是语语法法与与英英文文很很接接近近,可可以以让让不不懂懂计计算算机机的的人人也也能能看看懂懂程程序序。1968年年,COBOL语语言言进进行行了了标标准准化化。后后又又在在1974年年和和1984年年进进行行了了标标准准化化更更新新。COBOL语语言言曾曾经经风风靡靡一时。一时。商用语言商用语言COBOL第一章第一章 概说概说C+BASIC语言语言60年年代代中中期期,美美国国Dartmouth学学院院的的John G.Kemeney和和ThomasE.Kurtz认认为为,像像FORTRAN这这样样的的编编程程语语言言,都都是是为为专专业业人人员员设设计计的的,而而他他们们希希望望能能为为无无经经验验的的人人提提供供一一种种简简单单的的编编程程语语言言,特特别别希希望望那那些些非非计计算算机机专专业业的的学学生生也也能能通通过过这这种种语语言言学学会会使使用用计计算算机机。于于是是,他他们们在在简简化化FORTRAN的的基基础础上上,研研究究出出了了BASIC语语言言。由由于于BASIC语语言言易易学学易易用用,很很快快就就成成为为最最流流行行的的计计算算机机语语言言之之一一,几几乎乎所所有有小小型型和和个个人人计计算算机机都都使使用用它它。BASIC语语言言发发展展到到后后来来,出出现现了了许许多多改改版版,典典型型的的有有1983年年推推出出的的TrueBASIC,1985年年推推出出的的QBASIC,以以及及1991年年推推出的出的VisualBASIC(简称(简称VB)。)。VB一直风靡至今长盛不衰。一直风靡至今长盛不衰。第一章第一章 概说概说C+Lisp语言语言同同在在60年年代代中中期期,美美国国MIT的的JohnMcCarthy等等人人设设计计和和实实现现了了用用于于人人工工智智能能研研究究的的Lisp语语言言。Lisp语语言言是是基基于于表表处处理理的的函函数数语语言言,由由于于该该语语言言更更面面向向问问题题,因因此此较较容容易易编编程程,描描述述能能力力更更强强,更更易易于于进进行行程程序序正正确确性性验验证证和和软软件件维维护护。但但由由于于实实现现技技术术复复杂杂,处处理理文文件件等等能能力力不不强强,运运行行效效率率低低,该该工工具具一一直直停停留留在在实验室阶段。实验室阶段。第一章第一章 概说概说C+计算机教学语言计算机教学语言LOGO和结构化的编程语言和结构化的编程语言Pascal1967年年,美美国国麻麻省省理理工工大大学学人人工工智智能能实实验验室室S.Papert为为儿儿童童设设计计了了一一种种LOGO编编程程语语言言。他他用用LOGO语语言言启启发发孩孩子子们们的的学学习习与与思思考考,一一些些孩孩子子用用LOGO语语言言设设计计出出了了真真正正的的程程序序,于于是是LOGO成为一种热门的计算机教学语言。成为一种热门的计算机教学语言。1971年年,瑞瑞士士联联邦邦技技术术学学院院N.Wirth教教授授发发明明了了Pascal语语言言。Pascal语语言言语语法法严严谨谨,层层次次分分明明,程程序序易易写写,具具有有很很强强的的可可读读性性,是是第第一一个个结结构构化化的的编编程程语语言言。它它一一出出世世就就受受到到广广泛泛欢欢迎,为此,他获得迎,为此,他获得1984年度的年度的“图灵奖图灵奖”。第一章第一章 概说概说C+Simula67语言语言1967年年,挪挪威威奥奥斯斯陆陆的的Johan Dahl和和KristenNygaard推推出出了了Simula67语语言言。该该语语言言第第一一次次提提出出类类的的概概念念,能能够够把把应应用用中中的的概概念念直直接接用用编编程程语语言言描描述述,比比其其他他语语言言编编写写的的程程序序更更具具可可读读性性,而而且且编编译译系系统统捕捕捉捉类类型型错错误误的的能能力力十十分分强强,保保证证了了程程序序规规模模扩扩大大之之后后,错错误误量量不不会会非非线线性性增增长长。该该语语言言曾曾配配置置在在好好几几个个大大型型计计算算机机上上,但但由由于于编编译译实实现现不不完完善善,导导致致运运行行效效率率低低下下,只只能能执执行行一一些些小小型型程程序序,所所以以像像ALGOL语语言言一一样样,没没能能流流行行,但但成成为为未未来来面面世世的的面面向向对对象象编编程程语语言言的概念基础的概念基础。第一章第一章 概说概说C+C语言语言1970年年,AT&T的的 Bell实实 验验 室室 D.Ritchie和和K.Thompson共共同同发发明明了了C语语言言。研研制制C语语言言的的初初衷衷是是用用它它编编写写UNIX系系统统程程序序,因因此此,它它实实际际上上是是UNIX的的“副副产产品品”。它它充充分分结结合合了了汇汇汇汇编编编编语语语语言言言言和和高高高高级级级级语语语语言言言言的的优优点点,高高高高效效效效而而而而灵灵灵灵活活活活,又又容容容容易易易易移移移移植植植植,所所以以大大受受程程序序设设计计师师的的青青睐睐,成成为为计计算算机机产产业业界界的的宠宠儿儿。为为此此,他他们们两两位位获得了获得了1983年度的年度的“图灵奖图灵奖”。第一章第一章 概说概说C+C+语言语言70年年代代中中期期,BjarneStroustrup在在剑剑桥桥大大学学计计算算机机中中心心工工作作。他他使使用用过过Simula和和ALGOL,实实现现过过低低级级语语言言BCPL,接接触触过过C。他他对对Simula的的类类体体系系感感受受颇颇深深,对对ALGOL的的结结构构也也颇颇有有好好感感,他他深深知知运运行行效效率率的的意意义义,所所以以,十十分分欣欣赏赏C语语言言。以以C为为背背景景,以以Simula思思想想为为基基础础,正正好好符符合合既既要要编编程程简简单单、正正确确可可靠靠,又又要要运运行行高高效效、可可移移植植的的设设想想。1979年年,BjarneStroustrup到到了了Bell实实验验室室,开开始始从从事事将将C改改良良为为带带类类的的C(Cwithclasses)的的工工作作。1983年年将将该该语语言言正正式式命命名名为为C+。90年年代代,程程序序员员开开始始慢慢慢慢从从C中中淡淡出出,转转入入C+。此此后后,C+稳稳步步发发展展,1998年年ISO/ANSIC+标标准准正正式式制制定定,如如今今已已是是如如日日中中天天。鉴鉴于于C+对对现现代代计计算算机机产产业业的的贡贡献献,1995年年BYTE杂杂志志将将BjarneStroustrup列入列入“计算机工业计算机工业20个最具影响力的人个最具影响力的人”。第一章第一章 概说概说C+1.3 C+1.3 C+C+是是从从C语语言言中中继继承承而而来来的的。C+的的发发展展壮壮大大,主主要要是是因因为为程程序序设设计计方方法法的的发发展展。程程序序设设计计方方法法的的发发展展,主主要要是是计计算算机机应用范围的扩大和编程规模的扩大。应用范围的扩大和编程规模的扩大。C语语言言之之所所以以风风靡靡一一时时,在在于于当当时时需需要要计计算算机机解解决决的的问问题题多多半半是是小小规规模模问问题题,一一般般通通过过单单台台计计算算机机独独立立蛮蛮算算便便可可解解决决。随随着着计计算算机机的的发发展展,人人们们开开始始着着手手解解决决大大数数据据量量的的处处理理问问题题,需需要要处处理理大大量量复复杂杂结结构构的的数数据据。C程程序序员员虽虽然然经经过过艰艰苦苦的的努努力力,设设计计出出许许多多精精巧巧的的程程序序,但但是是在在理理解解上上却却越越来来越越困困难难,运运行行问问题题也也越越来来越越多多。程程序序需需要要“保保修修(可可维维护护性性要要求求)”,需需要要“扩扩充充(可可扩扩展展性性要要求求)”,需需要要“加加固固(安安全全性性要要求求)”。而而这这些些精精巧巧的的程程序序由由于于内内在在结结构构的的弱弱点点数数据据结结构构与与算算法法盘盘根根错节,无法被可逆地拆解,很难分析错节,无法被可逆地拆解,很难分析“险情险情”和重新使用。和重新使用。第一章第一章 概说概说C+设设计计计计算算机机语语言言的的专专家家要要改改革革这这一一现现状状,提提出出程程序序设设计计语语言言应应该该具具有有数数据据类类型型的的扩扩充充能能力力。于于是是基基于于数数据据类类型型和和面面向向数数据据类类型型的的编编程程语语言言不不断断浮浮出出水水面面。这这些些方方法法,是是以以程程序序员员自自己己定定义义或或设设计计数数据据类类型型的的方方式式将将复复杂杂结结构构的的数数据据进进行行系系统统的的组组织织,统统一一的的管管理理,以以使使程程序序组组织织合合理理,算算法法设设计计简简单单和和易易懂懂,C+便便是是其其中中之之一一,从从商商业业化化角角度度看看,C+更更是是其其中中的的跤跤跤跤者者。在在C的的简简捷捷、高高效效的的基基础础上上,C+添添加加了了自自定定义义数数据据类类型型的的整整套套设设施施,以以适适应应大大规规模模编编程程的的需需要要。因因此此,进进入市场后,面向对象的编程方法也开始工业化了。入市场后,面向对象的编程方法也开始工业化了。第一章第一章 概说概说C+C继承者继承者C+对对C的的继继承承是是青青出出于于蓝蓝而而胜胜于于蓝蓝,因因为为是是对对C的的继继承承,也也就就承承诺诺了了对对C的的包包容容。C+对对C的的包包容容,也也包包括括对对程程序序设设计计方方法法的的包包容容,这这就就决决定定了了C+擅擅长长面面向向对对象象程程序序设设计计的的同同时时,还还可可以以进进行行基基于于过过程程的的程程序序设计设计,因而,因而C+就适应的问题规模而论,大小由之。就适应的问题规模而论,大小由之。C+是是一一种种混混合合型型程程序序设设计计语语言言,“混混合合”体体现现在在可可以以采采用用不不同同的的程程序序设设计计方方法法,进进行行各各种种目目的的的的编编程。程。“混混合合”意意味味着着绝绝不不放放弃弃计计算算机机高高效效运运行行的的实实用用性性特特征征,而而又又致致力力于于提提高高大大规规模模程程序序的的编编程程质质量量,提提高高程程序序设设计语言的问题描述能力。计语言的问题描述能力。第一章第一章 概说概说C+标准标准C+有有了了C+标标准准,专专家家们们在在开开发发C+编编译译器器时时,可可以以避避免免大大量量的的研研究究无无序序性性和和重重复复劳劳动动,并并且且也也为为组组织织大大规规模模的的编编译译软软件件开开发创造了前提条件;发创造了前提条件;有有了了C+标标准准文文档档,语语言言设设计计者者,程程序序员员和和用用户户三三者者就就可可以以有有一一致致的的语语言言来来互互通通,在在程程序序员员社社区区可可以以畅畅通通地地交交流流,编编写写的的程序变得更有效,更通用,更易懂。程序变得更有效,更通用,更易懂。有有了了C+标标准准,程程序序员员所所开开发发的的软软件件产产品品具具有有更更高高的的系系统统可可移移植植性性;C+标标准准还还在在防防止止技技术术封封锁锁,促促进进软软件件技技术术的的交交流流,提高软件竞争力等方面起到了很好的保护作用;提高软件竞争力等方面起到了很好的保护作用;所所以以当当C+发发展展到到一一定定规规模模的的时时候候,无无论论是是用用户户、程程序序员员,还是还是C+语言的设计者,都在竭力推动标准化的工作。语言的设计者,都在竭力推动标准化的工作。第一章第一章 概说概说C+使使用用标标准准C+,也也意意味味着着程程序序员员可可以以充充分分享享用用C+的的资资源源标标准准库库。从从而而带带来来更更多多的的快快速速和和方方便便,提提高高抽抽象象编编程程的的程程度度。所所以以,学学习习C+,理理所所当当然然地地要要学学习标准习标准C+。在在我我国国,个个人人计计算算机机配配置置的的操操作作系系统统以以Windows居居多多,比比较较容容易易获获得得的的标标准准C+工工工工具具具具就就是是Borland公公司司的的C+Builder6或或者者以以上上版版本本,或或者者微微软软公公司司的的VisualC+、.net或或者者以以上上版版本本。若若在在linux系系统统上上,比比较较容容易易获获得得的的标标准准C+工工具具就就是是BorlandC+Kylix3.0以以上上版版本本。另另外外,通通用用的的C+编编译译器器当当数数C+3.0了了,它它即有即有Windows版本,又有版本,又有Linux版本。版本。第一章第一章 概说概说C+1.4 C+1.4 C+编程流程编程流程程程序序设设计计语语言言发发展展到到现现在在,无无论论编编译译型型还还是是解解释释型型,一一般般都都附附 带带 提提 供供 一一 个个 集集 成成 开开 发发 环环 境境(Integrated DevelopmentEnvironment,IDE)。程程序序员员可可以以在在该该环环境境中中,编编辑辑程程序序代代码码,逐逐个个编编译译源源文文件件,装装配配和和链链接接全全部部源源文文件件及及其其资资源源文文件件,直至调试运行。甚至软件包装和做成软件产品都可以一体化。直至调试运行。甚至软件包装和做成软件产品都可以一体化。解解释释型型环环境境(如如VB)中中,编编辑辑代代码码后后,没没有有编编译译和和链链接接的的中中间间环环节节,可可以以直直接接运运行行,方方便便编编程程开开发发。但但由由于于程程序序运运行行不不能能离离开开解解释释器器现现场场,所所以以效效率率上上便便落落了了下下风风。对对于于规规模模化化的的大大程程序序,低低性性能能表表现现得得更更加加明明显显,所所以以真真正正的的计计算算任任务务和和中中大大型软件开发一般都不用解释型环境开发。型软件开发一般都不用解释型环境开发。第一章第一章 概说概说C+C+语语言言的的程程序序因因为为要要体体现现高高性性能能,所所以以都都是是编编译译型型的的。C+的的IDE(集集成成开开发发环环境境)用用解解释释型型的的逐逐条条语语句句执执行行方方式式以以方方便便开开发发调调试试,用用编编译译型型的的方方式式来来生生成最终能脱离开发环境的执行代码以提高运行效率成最终能脱离开发环境的执行代码以提高运行效率。IDE功功能能齐齐全全,调调试试功功能能很很强强,程程序序编编好好后后,可可以以立立刻刻在在环环境境中中调调试试以以获获得得初初步步测测试试结结果果,然然后后,可可以以方方便便地地做做成成beta版版形形式式,拿拿到到实实际际环环境境中中进进一一步步测测试,最后做成软件发行版。试,最后做成软件发行版。一一般般的的编编程程操操作作流流程程为为:编编辑辑(edit)编编译译(compile)链链接接(link或或make或或build)调调试试(debug),该过程循环往复,直至完成。),该过程循环往复,直至完成。第一章第一章 概说概说C+C+源源程程序序,或或称称源源代代码码(sourcecode),简简称称代代码码(code),以以扩扩展展名名为为.cpp(在在Windows环环境境中中)的的文文本本形式存放。形式存放。程程序序被被编编译译(compile)后后,会会生生成成目目标标代代码码(objectcode),以以.obj为为文文件件扩扩展展名名存存放放。目目标标代代码码即即机机器器代代码码,是是计计算算机机能能够够识识别别的的指指令令集集合合,但但是是,目目标标指指令令(也也称称目目标标代代码码)还还不不能能在在具具体体的的计计算算机机上上运运行行,因因为为目目标标代代码码只只是是一一个个个个独独立立的的程程序序段段,程程序序段段之之间间还还没没有有彼彼此此呼呼应应,程程序序段段中中用用到到的的C+库库代代码码和和其其他他资资源源还没有挂上。还没有挂上。第一章第一章 概说概说C+为为了了把把成成组组的的程程序序段段转转换换为为可可执执行行程程序序,必必须须进进行行链链接接(link),链链接接的的过过程程就就是是将将目目标标代代码码整整合合(或或称称转转换换)成成可可执执行行文文件件,可可执执行行文文件件通通常常以以.exe为为文文件件扩扩展名展名。C+程程序序在在编编译译后后,通通过过同同时时链链接接若若干干个个目目标标文文件件与与若若干干个个库库文文件件而而创创建建可可执执行行程程序序。库库文文件件是是系系统统提提供供的的程程序序链链接接资资源源,不不同同公公司司的的IDE产产品品有有不不同同的的后后缀缀,例例如如,VisualC+的的库库文文件件的的后后缀缀是是.lib。标标准准C+提提供供C+标标准准库库,用用户户库库是是由由软软件件开开发发商商或或程程序序员员提提供供的的。目目标标文文件件与与库库文文件件链链接接的的结结果果,生生成成计计算算机可执行程序。机可执行程序。第一章第一章 概说概说C+1.5最小样板程序最小样板程序(MinimumSampleProgram)C+编译器能理解的有标准输出的最小程序为:编译器能理解的有标准输出的最小程序为:#includeint main()std:cout”hello world.n”;为为了了让让人人能能更更好好地地理理解解,并并让让程程序序体体现现出出其其逻逻辑辑结结构构。上述程序最好写成如下所示的有结构形式:上述程序最好写成如下所示的有结构形式:#includeint main()std:cout”hello world.n”;第一章第一章 概说概说C+程程序序中中“iostream”iostream”是是C+C+为为特特定定环环境境编编制制的的标标准准输输入入输输出出流类的标准库头文件。流类的标准库头文件。“cout”cout”是是标标准准输输出出设设备备的的名名字字,“”是是操操作作命命令令,指指示示将将后后面面的的数数据据(字字串串Hello Hello world.nworld.n),送送到到显显示示器器设设备备上上去。去。“std”std”是是“名名空空间间”。程程序序中中有有若若干干名名字字,程程序序规规模模大大起起来来后后,难难免免会会有有名名字字冲冲突突,就就好好像像学学校校中中遇遇到到同同名名学学生生:A A班班中中有有张张三三,B B班班中中也也有有张张三三,当当A A、B B班班在在一一起起上上课课时时,就就有有名名字字冲冲突突问问题题。解解决决的的简简单单办办法法就就是是两两个个张张三三分分别别命命名名为为:“A A班班的的张张三三”,“B B班班的的张张三三”。C+C+也也是是这这样样来来解解决决问问题题的的。为为了了防防止止程程序序员员自自己己又又命命名名一一个个“cout”cout”而而造造成成冲冲突突,就就特特地地对对语语言言专专门门提提供供的的标标准准设设备备名名“cout”cout”冠冠以以前前缀缀“std:”std:”,表表示示“标准库中的标准库中的cout”cout”。第一章第一章 概说概说C+编程风格编程风格(ProgrammingStyle)C+的的程程序序语语法法是是以以空空格格和和换换行行(回回车车)来来区区分分词词法法单单位位,以以特特定定的的字字符符来来辨辨认认语语法法的的,如如,分分号号“;”表表示示语语句句的的结结束束。除除此此之之外外,其其书书写写形形式式就就比比较较随随意意。程程序序设设计计格格式式的的随随意意性性,给程序设计风格带来了可朔性。给程序设计风格带来了可朔性。程程序序设设计计风风格格应应以以可可读读性性为为准准则则,合合理理的的紧紧凑凑性性、模模块块整整体性、对齐、锯齿型嵌套、注释体性、对齐、锯齿型嵌套、注释都是形成特定风格的因素。都是形成特定风格的因素。为为了了让让程程序序表表现现出出美美感感,又又不不致致于于语语句句前前后后内内容容含含混混不不清清、结结构构混乱,语句书写讲究疏密得当。混乱,语句书写讲究疏密得当。高高级级程程序序员员的的程程序序风风格格,体体现现了了极极大大的的一一贯贯性性和和艺艺术术性性。每每个个初初学学者者必必须须要要模模仿仿编编程程风风格格,随随着着编编程程量量的的增增加加,对对程程序序的的感受多多,会不知不觉地形成自己独特的风格。感受多多,会不知不觉地形成自己独特的风格。第一章第一章 概说概说C+最小样本程序最小样本程序/=/min_sample.cpp/带标准输出的最小样本程序带标准输出的最小样本程序/=#includeint main()std:cout”helloWorld.n”;/显示字符串显示字符串/=第一章第一章 概说概说C+1.6 1.6 程序与算法程序与算法(Program&Algorithm)(Program&Algorithm)计计算算机机程程序序是是用用计计算算机机语语言言所所要要求求的的规规范范描描述述出出来来的的一一系系列列动动作作,它它表表达达了了程程序序员员要要求求计计算算机机执执行行的的操作。操作。优优秀秀的的程程序序员员尤尤其其是是C+程程序序员员,追追求求编编程程方方法法的的实实效效性性。这这意意味味着着所所谓谓“学学会会计计算算机机语语言言,看看得得懂懂语语法法,了了解解了了语语言言的的描描述述方方法法”,还还是是不不够够的的,它它和和熟熟练练运运用用计计算算机机语语言言,能能用用语语言言高高效效、正正确确地地描描述述问问题题、解决问题解决问题是有天壤之别的。是有天壤之别的。学学习习计计算算机机语语言言在在于于让让计计算算机机准准确确地地执执行行程程序序,和和学习其他语言一样,都需要一个学习其他语言一样,都需要一个充分的实践充分的实践过程。过程。第一章第一章 概说概说C+算法算法(Algorithm)的定义的定义1)目目的的性性算算法法是是有有求求解解目目的的的的动动作作序序列列,算算法法必必须须有有运算结果,而程序只是强调过程性;运算结果,而程序只是强调过程性;2)抽抽象象性性算算法法离离不不开开数数据据结结构构,而而数数据据结结构构在在具具体体的的计计算算机机上上实实现现要要受受到到表表示示范范围围的的限限制制,算算法法比比具具体体的的程程序序设设计计抽抽象象层层次次要要高高一一些些,算算法法甚甚至至不不在在乎乎用用什什么么编程语言来描述;编程语言来描述;3)研研究究性性算算法法许许多多时时候候用用于于理理论论研研究究,描描述述算算法法的的目目的的是是沟沟通通人人们们的的思思想想,而而不不是是实实现现,所所以以,算算法法可可以以用伪编程语言来描述。用伪编程语言来描述。第一章第一章 概说概说C+编程与结构编程与结构(Programming&Structure)编编程程是是为为了了解解决决计计算算问问题题,计计算算问问题题强强调调算算法法,程程序序设设计计也也就就是是在在一一定定抽抽象象层层次次上上的的算算法法设设计计。这这里里的的抽抽象象层层次次应应理理解解为为数数据据的的描描述述方方式式。当当许许多多编编程程问问题题含含有有大大量量纵纵横横交交错错的的数数据据时时,人人们们便便逐逐渐渐意意识识到到数数据据组组织织与与数数据据结结构构的的重重要要,意意识识到到数数据据存存在在的的形形式式必必须须脱脱离离程程序序。1976年年,计计算算机机专专家家N.Wirth提提出这样的经典公式:出这样的经典公式:程序程序算法算法数据结构数据结构强强调调编编程程中中数数据据结结构构的的描描述述应应相相对对算算法法而而独独立立。程程序序不不再再是是单单纯纯的的过过程程体体(操操作作序序列列)了了,不不再再是是单单纯纯的的算算法法了了,而而是是算算法法和数据结构的有机组织。和数据结构的有机组织。第一章第一章 概说概说C+1.7 1.7 过程化程序设计过程化程序设计(Procedural Programming)(Procedural Programming)过程化程序设计主要体现在算法上,编程就是解决算法如过程化程序设计主要体现在算法上,编程就是解决算法如何设计问题。当算法很大时,就考虑将它按功能划分。程序组何设计问题。当算法很大时,就考虑将它按功能划分。程序组织围绕算法的切分而展开。这一类问题一般都是小规模的问题,织围绕算法的切分而展开。这一类问题一般都是小规模的问题,一般的程序设计语言都可以胜任。一般的程序设计语言都可以胜任。过程程序设计按照问题来设计算法。它所使用的是语言中过程程序设计按照问题来设计算法。它所使用的是语言中现成的基本数据类型。问题模型反映为过程结构模型,实际上现成的基本数据类型。问题模型反映为过程结构模型,实际上就是功能模型。但由于过程模块与数据的复杂关系没有清晰地就是功能模型。但由于过程模块与数据的复杂关系没有清晰地分离出来,所以它一般都是分离出来,所以它一般都是“具体问题具体解决具体问题具体解决”,无法重复无法重复使用其中的使用其中的“零部件零部件”,而且,问题庞大以后,其复杂性会无,而且,问题庞大以后,其复杂性会无法收场。法收场。第一章第一章 概说概说C+结构化程序设计结构化程序设计(StructuredProgramming)结构化程序设计方法主要体现在过程的功能划分结构化程序设计方法主要体现在过程的功能划分与过程内部的编写规则上,因此它是一种与过程内部的编写规则上,因此它是一种规范的过程规范的过程化化程序设计思想程序设计思想。结构化程序描述任何实体的操作序列只需用结构化程序描述任何实体的操作序列只需用“顺顺序,选择(分支),重复(循环)序,选择(分支),重复(循环)”三种基本控制结三种基本控制结构。构。结构化程序设计中的各个结构化程序设计中的各个过程体过程体和各个组成部分和各个组成部分以以模块模块来表示。每个模块,其内聚性来表示。每个模块,其内聚性(agregation)越强,越强,外联性外联性(association)越少,则模块独立性越好。越少,则模块独立性越好。第一章第一章 概说概说C+内内聚聚性性,即即模模块块内内部部所所涉涉及及的的功功能能越越单单一一越越好好。这这样样一一旦旦修修改改起起来来,就就职职责责明明确确,不不会会因因为为这这个个原原因因那那个原因都来找这个模块算帐。个原因都来找这个模块算帐。外外联联性性,即即模模块块之之间间的的联联系系越越少少越越好好,联联系系意意味味着着依依赖赖性性,外外联联性性少少,模模块块的的独独立立性性就就好好,独独立立性性意意味味着着自自说说自自话话地地修修改改本本模模块块与与外外界界无无关关。因因此此就就容容易易编编程和修改。程和修改。减减少少外外联联性性还还涉涉及及到到对对数数据据的的分分离离与与归归类类。将将过过程程体体中中的的数数据据分分离离出出来来,独独立立地地用用数数据据结结构构去去描描述述其其数数据和处理,这都是模块划分的原则。据和处理,这都是模块划分的原则。第一章第一章 概说概说C+1.8 1.8 对象化程序设计对象化程序设计(Objectified Programming)(Objectified Programming)伴伴随随着着人人类类对对计计算算机机的的依依赖赖性性日日益益增增强强,程程序序规规模模不不断断扩扩大大,模模块块数数呈呈指指数数级级递递增增,模模块块间间的的数数据据传传递递五五花花八八门门,同同一一程程序序中中模模块块之之间间的的关关系系错错综综复复杂杂,结结构构化化程程序序设设计计的的规规范范已已经经不不能能保保证证程程序序的的正正确确性性,可可维维护护性性和和重重用用性性了了。人人们们开开始始意意识识到到不不可可能能在在语语言言中中内内置置所所有有的的待待解解决决问问题题的的数数据据结结构构,必必须须让让语语言言具具有有自建数据结构自建数据结构的能力。的能力。数数据据结结构构对对于于算算法法,对对于于程程序序是是如如此此的的重重要要,但但当当时时大大多多数数语语言言都都没没有有专专门门支支持持对对数数据据结结构构的的直直接接描描述。述。第一章第一章 概说概说C+在在C语语言言中中有有一一种种结结构构(struct)类类型型,可可以以在在单单纯纯空空间间上上复复合合其其他他数数据据类类型型,描描述述数数据据的的组组织织,但但还还是是不不能能避避免免其其数数据据操操作作的的安安全全问问题题。在在大大规规模模程程序序设设计计中中,问问题题尤尤其其突突出出。软软件件发发展展似似有有一一个个不不可可逾逾越越的的极极限限,因因此此,在在软软件件产产业业界界曾曾一一度度有有软软件危机件危机之说。之说。其其实实浩浩瀚瀚的的编编程程大大军军并并非非每每个个人人都都必必须须要要精精通通问问题题的的每每个个细细节节,这这就就像像使使用用电电视视机机的的人人并并非非都都要要精精通通其其内内部部的的每每个个细细节节!我我们们可可用用电电视视机机的的外外壳壳,把把电电视视机机的的内内部部电电路路和和外外部部使使用用一一分分为为二二。外外部部使使用用只只需需要要了了解解电电视视机机的的基基本本操操作作方方法法,内内部部电电路路提提供供电电视视机机的的各各项项功功能能,两两者者都都需需要要一一个个共共同同的的规规范范电电视机的按钮操作功能。视机的按钮操作功能。第一章第一章 概说概说C+抽抽象象数数据据类类型型就就是是想想要要描描述述这这一一共共同同的的规规范范,它它描描述述数数据据的的组组织织和和相相关关的的操操作作。如如果果语语言言能能够够自自由由定定义义数数据据类类型型,那那么么,问问题题就就能能化化成成以以抽抽象象数数据据类类型型为为媒媒介介的的使使用用与与实实现现独独立立的的两两部部分分,因因而而该该语语言言的的解解决决问问题题的的能能力力一一定定就就强强。衡衡量量一一个个语语言言的的优劣,能否自定义或者说扩充数据类型是其重要指标优劣,能否自定义或者说扩充数据类型是其重要指标。C+有有一一个个类类(class)机机制制,这这正正是是C语语言言欠欠缺缺的的地地方方。数数据据类类型型的的本本质质是是数数据据组组织织(实实现现)和和其其操操作作(使使用用)的的捆捆绑绑性性。当当对对

    注意事项

    本文(C++优秀课件PPT.ppt)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开