版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、13:48:31,1,C + 程序设计教程(第二版),第一章 c+概述 Chapter 1 Introduction,清华大学出版社,一、面向对象的方法是在计算机语言发展过程中产生的。 早期:机器语言、汇编语言 50年代中期:FORTRAN语言引进了许多现代仍然使用的程序设计概念。 50年代后期:ALGOL60提出块结构的思想。 60年代:SIMULA67首先提出对象和类的概念,并支持类的继承,是面向对象语言的鼻祖 70年代:ADA不能全面地支持继承,称为基于对象的语言。,1 面向对象的由来和发展,后来出现的Smalltalk是最有影响的面向对象的语言之一。 80年代中后期以后,随着面向对象的
2、程序设计语言的广泛应用,出现了更多的面向对象的语言。,面向对象的语言可分为以下两类: 1、开发全新的面向对象的语言 ObjectC Eiffel Smalltalk80 2、对传统语言进行面向对象的扩展,称为混合型语言,其代表有C+语言。,C+,C,C+ 语言具有C语言的丰富的应用基础和开发环境的支持,对于已经掌握C语言的人讲,更易学易普及。,二、从C到C+ C语言是贝尔实验室为DEC公司开发PDP 系列计算机操作系统时研制的。 C作为UNIX操作系统的开发语言而广为应用 和流行。1989年制定为ANSI C标准。,1、语言简洁、紧凑,使用方便、灵活。 2、运算符和数据类型丰富。 3、访问内存
3、地址、寄存器、进行位操作, 具有汇编语言的功能。 4、生成的目标代码质量高、程序运行效率高。,C语言的独有特点是:,局限: 1、对类型的检查机制相对较弱、程序中的一些错误不能在编译时发现; 2、无支持代码重用的语言结构; 3、当程序规模达到一定的程度时,难以控制程序的复杂性;,为满足管理程序复杂性需要,1980年,贝尔实验室对C进行了改进和扩充:,“带类的C”,C,1983年取名为C+,后经过三次修订。 1994年制定了ANSI C+标准的草案。,1、C+是C的扩展,C是C+的子集,C+ 包括C的全部特征、属性和优点。同时,增加了对面向对象编程的完全支持。 2、与C 一致, C+程序结构采用函
4、数驱动机制实现。 3、C+实现了类的封装,数据隐藏、继承及多态,使其代码可重用并容易维护。 4、C+是一门高效使用的程序设计语言,既可进行过程化程序设计,又可进行面向对象程序设计。,C+的特点,在面向过程的程序设计中,程序是处理数据的一系列过程。过程(或函数)定义为实现特定功能的一组指令。 其主要设计思想是功能分解并逐步求精。数据与程序过程分开存储,编程的主要技巧在于关注模块之间的调用关系及数据的变化。,1.2 面向过程的程序设计,1、当数据量增大时,数据与处理这些数据的方法之间的分离使程序变得越来越难以理解。 2、相对于老问题的新方法都要带来额外的开销,程序的可重用性小。,面向过程程序设计的
5、主要缺点,面向对象程序设计 OOP (Object-Oriented Programming)的三要素: 对象、类和继承 面向对象程序设计的实现需要: 封装和数据隐藏技术 继承和多态性技术,1.3 面向对象程序设计,对象的模型结构,多态性 封装性、继承性、多态性是构成面向对象 程序设计的三大特征。 封装性是基础 继承性是关键 多态性是补充 什么是多态性? 多态是指一个名字有多种语义,或一个相同界面有多种实现; 或是指发出同样的消息被不同类型的对象 接受而导致完全不同的行为。即对象根据所接收到的消息做出相应的操作。,例如:在学籍管理系统中,学生类(基类) 计算成绩的操作,中学生类(派生类) 计算
6、成绩的操作,大学生类(派生类) 计算成绩的操作,1.4 程序开发过程,例1: /* /*ch1.0.cpp* /* void main( ) ,1.5 最简单的程序,运行结果为:,例2: /* /*ch1.1.cpp* /* # include void main( ) cout “I am a student.n”; ,1.5 最简单的程序,运行结果为: I am a student.,例 3: /* ch1.2.cpp * #include void main( ) int interger1; int interger2; int result; cout interger1 inter
7、ger2; result=3*interger1-2*interger2+1; cout “Result is ” resultendl; ,内存的概念 Memory Concepts,cin integer1; Assume user entered 45 cin integer2; Assume user entered 72 sum = integer1 + integer2;,C+程序是由函数构成的,由一个主函数和若干个函数构成。 C+程序是函数驱动的。 例3: /*ch1.3.cpp* #include #include double max(doubl x, doubl y); / function prototype void main( ) double a, b, c; cout “Input two numbers:n”; c=max(a,b); cout “The squart of maximum=”sqrt( c); , 1.6 函 数,double max(doubl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药物制剂的基本操作教学设计中职专业课-药剂学基础-药剂-医药卫生大类
- 高中生活应用2025年统计调查说课稿
- 2026年燃气管道第三方施工保护制度与应急联络
- 2026年应急药品储备管理制度与调用发放流程
- 2026年医保患者满意度调查问卷
- 超市消防控制室值班记录
- 2026年网络工程专业实操实训报告
- 2026年医保业务一次性告知制度
- 2026年台球冬训走位精细化与防守思路训练
- 2026年植物工厂人工光照明技术指南
- 2024年河北省中考语文试卷试题答案详解及备考指导(精校打印版)
- 电气控制与PLC技术(西门子S7-1200系列)(第2版)课件 项目二任务3 定时器指令的使用
- JCT 2126.1-2023 水泥制品工艺技术规程 第1部分:混凝土和钢筋混凝土排水管 (正式版)
- JBT 1306-2024 电动单梁起重机(正式版)
- 4.4.1 叠合板生产及质量控制(装配式混凝土建筑构件生产与管理)
- 妇科常见化疗药物及护理
- 空乘面试常用英语
- 少年司法制度
- GB/T 12230-2023通用阀门不锈钢铸件技术条件
- 华北理工选矿学课件02磁电选矿-5电选机
- 云南省地图含市县地图矢量分层地图行政区划市县概况ppt模板
评论
0/150
提交评论