C++第一课以及指导书推荐

上传人:美*** 文档编号:243136420 上传时间:2024-09-16 格式:PPT 页数:38 大小:793.50KB
返回 下载 相关 举报
C++第一课以及指导书推荐_第1页
第1页 / 共38页
C++第一课以及指导书推荐_第2页
第2页 / 共38页
C++第一课以及指导书推荐_第3页
第3页 / 共38页
点击查看更多>>
资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,38,*,面向对象程序设计,_C+,*,2024/9/16,为什么学,习,C+?,“当应用程序或代码超过,100 000,行时,结构编程就显得要崩溃了。”,Stein.J.Martch,面向对象编程和数据库设计,MauriceWilkes,在图灵奖颁奖仪式上说:“对象是软件界,70,年代以来最激动人心的革新之一。”,软件系统日趋复杂,业界对软件的可重用性、易维护性和稳定性呼声极高,面向对象技术在处理复杂系统、非线性系统的分析、设计和实施等方面的前景越来越光明,2024/9/16,C+,本身优异的性能表现、,C+,在众多领域中的广泛应用,主流的,3,种操作系统,Windows,Linux,Unix,内核都是用,C,语言和汇编写的,上层高级特性是用,C+,写的,魔兽世界,等大多数的网络游戏,Google,、百度等搜索引擎,Amazon,、,AT&T,的供应系统,(provisioning systems ),、网络崩溃后快速恢复系统,(systems for rapid network recovery after failure ),我们所用的大多数软件都是用,C+,写的(硬件也有很多用到,C+,的),多数理工科院校均开设的信息类核心基础课程,2024/9/16,教学目标,掌握面向对象思想的精髓,能熟练利用,C+,解决实际问题,能灵活运用面向对象的四大特性解决实际问题,能用,C+,编写实用程序,初步了解并学习软件架构、设计模式相关知识,能正确面对困难、能正确面对自己,2024/9/16,具体教学方式,教学结合实际,从实例入手,举一反三,布置作业从实例入手,培养同学动手能力,定期公布电子版正确答案,便于同学自省,和实验紧密结合,在每章节都布置实用实验,并定期公布实验课电子版正确答案,便于同学深刻认识每章重要知识及其用途,加强和同学的交流,2024/9/16,几点建议,C,和,C+,是两门神韵完全不同的语言,,请完全“忘记”,C,语言,避免局限在具体的语法细节中,注重理解,C+,的轮廓,请做好预习和复习工作,(2,:,6),上机的时间和编程的能力成正比,不懂就多问,2024/9/16,参考资源,C+ Primer . Stanley B. Lippman,C+,程序设计语言,.,Bjarne Stroustrup,(C+,创始者,),C+,大学教程,第五版,Effective C+、More Effective,C+,.Scott,Meyers.,中国电力出版社,看雪论坛:,-,论坛,2024/9/16,学时安排,第一章认识对象,2,学时,第二章发现对象和设计类 6学时,第三章详解对象 6学时,第四章派生新类 4学时,第五章多态 6学时,第六章运算符重载,2,学时,第七、八、九章 各2学时,2024/9/16,课程考核标准,期末总评成绩=70%*卷面成绩+平时成绩,平时成绩分为作业、考勤和课堂提问三项,凡是,迟到、缺勤、早退、,抄作业,扣5分,对于非正常选课的同学,,2024/9/16,课件下载地址,教师空间,|,冯潇,|,课件下载,面向对象技术概述,2024/9/16,内容提要,面向对象程序设计思想简介,面向对象基本特征描述,C+,程序的基本构成和标准库简介,在,C+,中完成标准的输入和输出,2024/9/16,重点、难点,理解面向对象程序设计的主要思想,理解面向对象技术的主要特征,能利用,C+,完成标准的输入,/,输出,2024/9/16,先从面向过程程序设计说起,以银行柜台办理业务为例:,过去:顾客排队、业务员受理队首客户的业务,办理完毕后顾客评价服务质量、离开,现在:顾客取号排队、到号办理、离开,银行业务流程变动频繁,面向过程程序设计以功能为中心处理问题,整个程序的业务办理方式和流程发生变化,则整个程序的,结构和流程,也发生,变化,以功能为中心的系统是不稳定的,2024/9/16,以数据为中心的优势,无论业务方式和流程如何变化,业务中涉及的客观事物是相对稳定的:,帐户,(,顾客?,),业务员,等待办理业务的顾客队列,可见,数据相对功能更稳定!,那么,这里的数据究竟指什么?,2024/9/16,一切事物皆是对象,客观实在之物即为对象,人、空气、思想,,只要是我们关注的,一切事物皆为对象,对象的特征,静态特征(属性):姓名、性别、年龄、性格,动态特征(行为):思考、劳动、吃饭,面向对象程序设计关注问题中包含哪些事物,这些事物具备哪些静态和动态特征,静态特征往往是隐藏的,动态特征往往是外露的,2024/9/16,问题空间,-,解空间,-,计算机空间,问题空间:找到待求解问题中涉及哪些对象,帐户、现金出纳、顾客队列,解空间:借助建模思想建立问题的求解模型,2024/9/16,计算机空间,定义帐户类别:,class,Accout,public,:,/,外露的行为,void debit(double amount);/,取钱,void credit(double amount);/,存钱,private,:,/,隐蔽的属性,double balance; /,余额,char id20; /,账号,char pwd6; /,密码,2024/9/16,生成帐户对象,类是一组具有相似特征的对象集合,同类对象具有相同的属性和方法,对象是该类别的一个具体实例:,Accout John(300,95588 8888 8888 8888,111111);,Accout Dana(10, 95588 6666 6666 6666,111111);,其中,Accout,代表帐户类,,John,和,Dana,是,Account,类的两个对象,可把类别看作数据类型,对象看作该类型的变量,2024/9/16,程序是一组相互通讯的对象,帐户对象,Ann,通过消息“取号”,插入队列末,出纳通过消息“叫号”,从队首删除,John,帐户,并受理其业务,,2024/9/16,从面向过程到面向对象,图灵机,(,现代通用数字计算机的数学基础,),把问题转化为一步一步按规则执行的机械求解过程,英国科学家艾兰,.,图灵,图灵机,2024/9/16,冯,诺依曼计算机,(,现代计算机的计算模型,),“,程序放入内存,顺序执行,”,,,1945-1946,面向过程程序设计思想更接近计算机的逻辑和物理实现,面向对象程序设计思想更符合人类的认知习惯,2024/9/16,结构化程序设计的方法是把程序看做是工作在数据上的一系列过程或函数的集合,程序,=,算法,+,数据结构,(Wirth,定律,),面向对象方法是把程序看作是互相协作而又彼此独立的对象的集合。对象间通过发送消息而相互作用。,对象,=,算法,+,数据结构,程序,=,对象,+,对象,+,对象,+,2024/9/16,软件不软,用户能很容易抽象地表达自己的需求,但这种需求却很难转化为程序代码,把世界看成对象更接近人类的自然思维方式,更易于适应用户要求的变化,更易于修改、扩充和维护,更易于实现非线性的复杂系统,2024/9/16,面向对象技术的基本特征,抽象性,抽象出,用户关心的,基本特征,在程序世界中,事物的,属性,被抽象为,数据,,事物的,行为,被抽象为,方法,(,函数,),。,2024/9/16,封装性,隐藏外界不需要知道的信息,只暴露与外界交互的接口,将对象所有与最基本特征无关的信息隐藏起来,2024/9/16,泛化和继承,反映同类事物的共性和个性,体现类之间的层次关系,2024/9/16,多态性,不同的对象面对同一消息产生的反应不同,风,解落深秋叶,能吹二月花,过江千层浪,入竹万竿斜,森林里有许多小动物,听到“危险来了”的消息时,河马跳进了水里,蛇钻进了洞里,猴子爬到树上,小鸟飞走了,2024/9/16,面向对象术语,对象,对象是问题域中一些事物的抽象,对象是属性和方法的封装体,属性用变量来表示,行为用函数来表示,类,对一组具有相似特征对象的抽象,属于某一类别的对象称作该类的一个实例,同类对象具有相同属性和方法,同类对象具有不同的对象名,shape,Circle,rectangle,triangle,2024/9/16,oo,程序的组织,#include ,using namespace std;,class,circle /,创建用户自定义类别,circle,public:,double GetArea() return 3.14 * r * r;,private:,double r;,;,int main(),circle c1; /c1,是,circle,类别的对象,double result =,c1.GetArea(); /,计算,c1,的面积,cout “result = ” result endl; /,向屏幕输出面积,return 0,;,2024/9/16,C+,程序的基本构成,编译预处理部分,类的定义部分,main(),注释部分,2024/9/16,C+,中完成标准输入,/,输出,C,语言中,输入和输出通过库函数,scanf(),和,printf(),完成,C+,通过,io,流库完成输入和输出,,io,流库声明于标准库文件,中,使用格式为,#include ,using namespace std; /,该文件在标准名字空间,std,下,流对象,cout(,读音,,see-out),代表标准输出设备,即屏幕,流对象,cin(,读音,,see-in),代表标准输入设备,即键盘,2024/9/16,cin,和,cout,用法,cout,语法格式:,cout ,变量名,1 ,变量名,2, endl;,其中,,endl,代表换行符,插入运算符,变量名,1 ,变量名,2;,提取运算符,代表数据流向是从标准输入设备流向变量;,2024/9/16,示例,1,#include,#include,using namespace std;,int main(),char name20;,cout, name;,strcat(name, ,你好!,);,cout, name endl;,return 0;,2024/9/16,示例,2,#include ,#include ,using namespace std;,int main(),string name;,cout name;,name +=,你好!,;,cout name endl;,return 0;,2024/9/16,C,是面向过程的程序设计,语言,C+,是面向对象的程序设计,语言,C+,沿袭,C,的语法习惯,但对,C,的某些语言做了增强,如对输入、输出的改进,同时支持面向对象程序设计,正因如此,,C+,并非完全的面向对象语言,是混合型的程序设计语言,C,和,C+,都诞生在贝尔实验室,C,与,C+,2024/9/16,C+,与,VC+,Visual C+,是微软基于,C+,语言推出的一个可视化,集成开发环境,,集编辑、编译、连接、运行于一体。,Visual C+,提供了一个庞大的基础类库,(MFC),,为程序员进行,windows,程序开发提供了强大的支持。,由于,VC,的强大、灵活、能控制底层,使得它拥有不少铁杆支持者。,2024/9/16,作业,预习第二章到2.4.2节,利用,C+,标准库文件,输出自己的班级、姓名、学号,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 小学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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