在Internet上传输文件.ppt

上传人:ga****84 文档编号:363520 上传时间:2018-09-27 格式:PPT 页数:24 大小:1.96MB
下载 相关 举报
在Internet上传输文件.ppt_第1页
第1页 / 共24页
在Internet上传输文件.ppt_第2页
第2页 / 共24页
在Internet上传输文件.ppt_第3页
第3页 / 共24页
在Internet上传输文件.ppt_第4页
第4页 / 共24页
在Internet上传输文件.ppt_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、面向对象程序设计C+,授课老师:龚涛信息科学与技术学院2018年3月教材:Visual C+程序员成长攻略C+ Builder程序员成长攻略,龚涛,东华大学信息科学与技术学院,2,第1章 学习面向对象程序设计方法的理由,C+程序的实现,C+程序结构的特点,C+语言的词法及词法规则,C+语言是一种面向对象的程序设计语言,面向对象程序设计的有关概念,龚涛,东华大学信息科学与技术学院,3,1.1.1 面向对象的由来和发展早期的汇编语言比机器语言(二进制码)方便得多。20世纪50年代中期出现高级程序设计语言FORTRAN。20世纪50年代后期,Algol通过块结构对变量实施隔离。20世纪60年代,Si

2、mula 67是面向对象语言的鼻祖,提出了对象的概念,使用了类的概念,支持类的继承。20世纪70年代,Ada语言是支持数据抽象类型的最重要的语言之一,但不全面支持继承,称为基于对象的语言。Smalltalk语言是最有影响的面向对象语言之一,它和Object-C等都是全新的面向对象语言。C+对传统语言C进行面向对象的扩展,是混合型语言。面向对象的语言更接近于自然语言。,1.1 面向对象程序设计的有关概念,第1章 C+语言概述,龚涛,东华大学信息科学与技术学院,4,面向对象是一种运用了对象、类、封装、继承和多态性等来构造系统的软件开发方法,面向对象程序设计方法的特征体现于对象、类、封装、继承和多态

3、性。对象对象的地位:对象是软件系统的基本构成单位,是研究问题和分析问题的出发点,是构成程序的主要成员。对象的实质:对象是对客观世界中实际存在的某种事物的抽象,是描述客观事物的一个实体。对象的定义:对象是一组属性和一组行为的集合,是数据与操作的集合。属性用来描述对象的静态特性,它使用若干数据来表示;行为是用来描述对象的动态特性,它使用若干操作来表示。对象之间传递信息是通过消息实现的。,1.1.2 面向对象的有关概念,1.1 面向对象的由来和发展,龚涛,东华大学信息科学与技术学院,5,类类的本质:类是一种由用户定义的自定义类型,称为类类型。类的定义:类是一种具有共同属性和行为的若干对象的统一描述体

4、,类是创建对象的样板,它包含着所创建对象的数据描述和操作的定义。分类的思想:分类是人们认识客观世界的一种常用的思维方法,将具有相同属性的事物划分为一类,得到一个抽象的概念,用来表示一类事物。分类的原则是抽象,类是抽象数据类型的实现。封装封装是把对象的属性和行为(即数据和操作)结合成为一个封装体,操作是通过函数来实现的,又称为方法。封装体具有隐藏性,通过称为接口的通道与外界进行联系。,1.1.2 面向对象的有关概念,1.1 面向对象的由来和发展,龚涛,东华大学信息科学与技术学院,6,聚合聚合的定义:聚合是类之间的一种包含关系,聚合用来将复杂类表示为若干简单类的对象的集合。问题归约的思想:在处理一

5、个复杂问题时,常常将复杂问题分解为若干个简单问题,通过逐个解决简单问题来解决复杂问题。继承特殊类具有一般类的全部属性和行为,并且它还有自己的属性和行为,此时称特殊类是对一般类的继承。继承是创建新类的方法之一,可以简化人们对事物的描述,减少冗余性,提高重用性。可以将已开发好的类存放到类库内,例如Visual C+的基础函数类库MFC。开发新系统时,便可直接使用或继承使用已有的类,这将会减少编程的工作量,并提高编程质量。,1.1.2 面向对象的有关概念,1.1 面向对象的由来和发展,龚涛,东华大学信息科学与技术学院,7,多态性多态性是一对多的状态,函数重载和运算符重载是多态性的体现,即一个函数名或

6、同一个运算符对应于不同的实现或功能。多态性体现在动态联编上。在一般类中定义的行为或方法,被特殊类继承后,可有不同的实现或操作,并在运行中进行联编。例如,定义一个一般类“几何图形”,它有求面积的方法,在一般类中该方法可以不给出具体的实现。对于该类的特殊类“圆形”、“矩形”、“三角形”等,这些特殊类都继承该一般类,每个特殊类中也都有求面积的方法。这些特殊的求面积方法根据其不同的几何图形具体实现,各个方法的求面积公式是不一样的。在实际操作时根据运行时出现的几何图形,调用对应的求面积方法进行计算,这就是面向对象的多态性。,1.1.2 面向对象的有关概念,1.1 面向对象的由来和发展,龚涛,东华大学信息

7、科学与技术学院,8,面向对象的方法可归纳为以下几点:将客观事物中抽象出的数据和方法构成一个集合体,这便是对象,即对实体的描述。将相同类型的对象抽象出共性,形成类。类具有封装性和隐藏性。类是一个封装体,类中大多数数据只能通过本类的方法进行处理。这些数据在类外是不可见的,无法访问。类是通过外部接口与外界联系的,这些外部接口提供了类的行为。对象之间是通过消息进行通信的。,1.1.2 面向对象的有关概念,1.1 面向对象的由来和发展,龚涛,东华大学信息科学与技术学院,9,1.2.1 C+语言对面向对象程序设计方法的支持(1) 支持数据封装将数据和对该数据进行合法操作的函数封装在一起对数据访问严格控制(

8、2) 支持类成员的3种访问权限私有(private)成员:只有在类中说明的函数才能访问私有成员公有(public)成员:所有类都能访问,这是该类的对外接口保护(protected)成员:类内函数和该类的派生类能访问(3) 支持通过发送消息处理对象C+语言中,每个对象根据所接收到的消息的性质来决定需要采取的行动,以响应这个消息。送到一个对象的所有可能的消息在对象的类描述中都需要定义,即对每个可能的消息给出一个相应的方法。,1.2 C+语言是一种面向对象的高级语言,第1章 C+语言概述,龚涛,东华大学信息科学与技术学院,10,(4) 支持友元类的私有成员一般是不允许该类外面的任何函数访问的,但是友

9、元可打破这条禁令。类中函数如果是友元,就称为友元函数。类中所包含的类如果是友元,就称为友元类,友元类的所有成员函数都是该类的友元函数。(5) 支持函数重载和运算符重载(6) 支持继承性C+语言支持单继承和多继承。派生类(子类)继承了基类(父类)的所有数据和方法,此外派生类还可定义所需要的不包含在父类中的数据和方法。(7) 支持动态联编(虚函数),1.2.1 C+语言对面向对象程序设计方法的支持,1.2 C+语言是一种面向对象的高级语言,龚涛,东华大学信息科学与技术学院,11,(1) 包容性C+语言包含C语言的全部内容,C语言是C+语言的一个子集。C语言代码为C+语言所用,C+不是纯正的面向对象

10、。(2) 对C语言的改进增加了运算符;增加了类型的安全性,严格检查类型转换;引进了引用;允许函数重载、内联及设置参数默认值等;随时可以说明变量。(3) 本质差别:面向对象与面向过程,1.2.2 C+语言与C语言的关系,1.2 C+语言是一种面向对象的高级语言,龚涛,东华大学信息科学与技术学院,12,1.3.1 C+语言的字符集大小写英文字母: az和A Z数字字符: 0 9特殊字符: 空格 ! # % ? “ () ,1. 3 C+词法及其规则,第1章 C+语言概述,龚涛,东华大学信息科学与技术学院,13,(1) 标识符标识符是由程序员定义的单词,用以命名程序中的一些实体,例如函数名、类名、变

11、量名、对象名、标号名、类型名等。标识符的长度不限,但特定的编译系统能识别的标识符的长度是有限的。C+语言的标识符由大小写字母、数字字符(09)和下划线组成,并且以字母或下划线开始。标识符中大小写字母是有区别的用户定义标识符时,不要采用系统的保留字(关键字和设备字等)。,1.3.1 C+语言的单词及词法规则,1.3 C+语言的词法及词法规则,龚涛,东华大学信息科学与技术学院,14,(2) 关键字auto bool break case char catch class constcontinue default delete do double else enum explicitextern

12、float for friend goto if inline intlong mutable new operator private protected public registerreturn short signed sized static static_cast struct switchtemplate this throw true try typedef union unsignedusing virtual void volatile while(3)运算符运算符实际上是系统预定义的函数名字。分为单目运算符、双目运算符和三目运算符。,1.3.1 C+语言的单词及词法规则,

13、1.3 C+语言的词法及词法规则,龚涛,东华大学信息科学与技术学院,15,(4) 分隔符空格符:单词与单词之间逗号:说明时变量之间;函数多个参数之间分号:for循环语句中三个表达式之间冒号:语句标号;switch语句中关键字case:构造程序(5) 常量数字常量字符常量字符串常量(6) 注释符(/* */ /),1.3.1 C+语言的单词及词法规则,1.3 C+语言的词法及词法规则,龚涛,东华大学信息科学与技术学院,16,1.4.1 C+语言的第1个示例第1个C+程序示例:求两个浮点数之和源代码: /这是第1个 C+ 程序示例. #include void main() double x, y

14、; coutxy; double z=x+y; coutx+y=z”的键盘输入操作: cin(变量1)(变量2) 使用插入符“”的屏幕输出操作: cout(表达式1)(表达式2) 函数:C+程序文件函数语句:表达式语句、空语句、复合语句、分支语句、循环语句等变量和常量(常量定义不同于C语言)(2) C+程序中出现类和对象,1.4.2 C+程序的组成部分,1.4 C+语言结构的特点,龚涛,东华大学信息科学与技术学院,20,(1) 与C语言相同部分的书写与C语言相同(2) 类及对象按定义的格式书写一行一般写一条语句,分行原则是不能将一个单词分开。短语句可以一行写多条,长语句可以一条写多行。书写C+

15、程序时尽量提高可读性,例1. 2与例1. 3说明了程序的书写格式影响可读性。,1.4.3 C+程序的书写格式,1.4 C+语言结构的特点,龚涛,东华大学信息科学与技术学院,21,1.5.1 C+语言程序实现的三步曲(1) 编辑编辑是将编写好的C+源程序输入到计算机中,生成磁盘文件的过程。可以使用计算机软件所提供的任何编辑器对C+源程序进行编辑。(2) 编译(预处理、编译、连接)词法分析、语法分析生成符号表、进行错误处理、生成目标代码(3) 运行,1. 5 C+程序的实现,第1章 C+语言概述,龚涛,东华大学信息科学与技术学院,22,Visual C+ 6.0版本是当前国内比较流行的一种C+编译

16、系统,功能较强,需要在Windows 9X和NT系统上运行。(1) 单文件程序的实现方法 以例1. 4为例,打开菜单【文件】|【新建】|【文件】|C+ Source File,创建C+程序文件f1.cpp。(2) 多文件程序的实现方法 以例1.5为例,创建C+程序文件f2.cpp和f3.cpp,创建新的项目文件,向项目文件中添加C+程序文件;再编译连接项目文件,最后运行项目文件。,1.5.2 Visual C+ 6.0版本实现C+程序,第1章 C+语言概述,龚涛,东华大学信息科学与技术学院,23,1.5.2 Visual C+ 6.0版本实现C+程序,第1章 C+语言概述,龚涛,东华大学信息科学与技术学院,24,答疑联系信息,办公室电话:021-67792312手机:18201798064E-mail:办公室地址:2号学院楼518室QQ:5763698,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 重点行业资料库 > 1

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。