C++ppt讲义1-4 .ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C++ppt讲义1-4 .ppt》由用户(hyngb9260)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ppt讲义1-4 ppt 讲义
- 资源描述:
-
1、2023-6-41面向对象程序设计C+语言基础 主讲:魏宝刚2023-6-42第一讲 绪论 程序设计语言程序设计语言表达软件的工具表达软件的工具 计算机不是一台真正的机器 程序一种软件机器。这种机器的建造依赖于工具、材料和想象 力之间的相互作用,程序设计语言定义了工具和材料。数学模型(形式化描述)比程序设计语言更重要。程序设计语言的发展程序设计语言的发展 硬件发展软件危机结构化程序设计软件工程面向对象技术 机器码低级高级;编译程序编译程序(如如C+Builder)操作系统操作系统 (如如Linux)数据库系统数据库系统(如如Oracle)系统工具软件(如系统工具软件(如Word)领域应用软件领
2、域应用软件2023-6-43 结构化过程和面向对象编程 结构化程序设计:结构化程序设计:总体结构层次树状;局部组织模块化。一般不允许goto.程序处理数据的一系列过程;数据,过程分开存储;“分而治之”。缺点:数据和任务分离,难理解、维护;重用性差;软件开发的瀑布模型:软件开发的瀑布模型:六个阶段:软件计划可行性分析、工作范围和代价;需求分析(做什么)功能需求、性能需求、环境需求与限制;软件设计(怎么做)概要设计和详细设计;软件编码用具体语言实现设计;软件测试单元测试和综合测试;软件维护已交付的软件修改、扩充、排错;2023-6-44 面向对象程序设计面向对象程序设计:菜单、按钮、窗口菜单、按钮
3、、窗口事件驱动;事件驱动;数据和数据处理过程数据和数据处理过程对象;对象;面向对象的四大支柱:封装、数据隐藏、继承和多态性。面向对象的四大支柱:封装、数据隐藏、继承和多态性。C C语言贝尔实验室的语言贝尔实验室的 Dennis Ritchie Dennis Ritchie 开发的,开发的,19721972年在一台年在一台DECDEC PDP-11 PDP-11实现。实现。UNIXUNIX系统的开发语言。系统的开发语言。满足复杂性要求,满足复杂性要求,19801980年年 贝尔实验室的贝尔实验室的 Bjame Stroustrup Bjame Stroustrup 开发带开发带类的类的C C。1
4、9831983年正式取名年正式取名C+C+。真真实实世世界界的的数数据据 C+程程序序 C+编编译译器器 操操作作系系统统 物物理理计计算算机机 2023-6-45C+程序的结构nC+应用程序的结构n简单的C+程序nC+源程序的执行2023-6-46 C+应用程序的结构老师类老师类 学生类学生类 张三张三 李四李四 王萍王萍 赵英赵英 类对象类对象陈老师陈老师 实例对象实例对象 C+程序是一组相互通信的对象程序是一组相互通信的对象main主控对象主控对象C+C+应用程序设计:应用程序设计:1.定义应用需要的类对象;2.定义主控对象,完成对象间的通信;2023-6-47 简单的简单的C+C+程序
5、程序#include int mail()cout“Hello,Worldn”;一般:公用数据和函数说明放在头文件(.h)中;实现函数功能的函数体和局部数据放在源文件(.cc)中;程序是由一行行符号序列表达的,空格将符号序列分为六类:关键字:include,int,const等说明语句、数据的性质;标识符:cin,cout,a,b等代表运算对象;运算符:b)?a:b;含义?含义?C#include f(a,b)char*a;float b;printf(“a:%s,b:%fn”,a,b);main()f(12.3,12.3);C+#include f(char*a,float b)cout“a
6、:”a“,”“b”bendl;void main()f(12.3,12.3);?4 函数 C+C+与与 C C不同之处是声明使用原型,以保证实参和形参类型一致(编译器检查)不同之处是声明使用原型,以保证实参和形参类型一致(编译器检查)2023-6-415 ex 5.Char*pChar;pChar=new char;char*string=new char25;/delete pChar;delete string;new和和delete运算符和运算符和C中的中的malloc和和free函数的区别:函数的区别:new运算符根据对象的类型,自动决定其大小,而malloc要指定分配存储空间的大小;
7、new返回指向此类型的指针,malloc返回指向void*类型的指针。每种运算符只能用于特定的对象:ex 6.intex 6.int i;i;*i=10;?i=10;?ex 7.12.3%3?ex 7.12.3%3?12.32 12.32?:是作用域分辨符,用它可以访问隐藏的全局变量。2023-6-416 程序的结构整个程序整个程序.C文件文件1.C文件文件n函数函数1函数函数k函数函数1函数函数l全局变量局部变量静态变量工程文件(.dsw,.prj):告诉编译器可执行文件由哪些.c文件装成;连上哪些.obj文件;要连的标准库.lib2023-6-417 程序运行时的内存占用栈区(栈区(sta
8、ck area)堆区(堆区(heap area)数据区(数据区(data area)代码区(代码区(code area)存放程序的代码部分存放程序的全局数据和静态数据存放程序动态申请的数据存放程序的局部数据和参数2023-6-418#includeint m=80;void F1(int w)static int n=70;int k=60;/1 m+;n+;k+;w+;/2 printf(“F1()-m:%d n:%d k:%d w:%dn”,m,n,k,w);void F2()int m=90;m+;/4 F1(m);printf(“F2()-m:%d n”,m);void main()i
9、nt w=20;F1(w);/3 printf(“下面调用下面调用F2()n”);F2();k 60w 20w 20未用未用m 80F1的的n 70main、F1、F2代码代码数据区代码区栈区堆区栈顶F1maink 61w 21w 20未用未用m 81F1的的n 71main、F1、F2代码代码数据区代码区栈区堆区栈顶F1maink 61w 21w 20未用未用m 81F1的的n 71main、F1、F2代码代码数据区代码区栈区堆区main栈顶k 61m 91w 20未用未用m 81F1的的n 71main、F1、F2代码代码数据区代码区栈区堆区main栈顶F2k 61w 91m 91w 20
10、未用未用m 81F1的的n 71main、F1、F2代码代码数据区代码区栈区堆区main栈顶F2F12023-6-419 流程控制、函数和文件1 1 流程控制语句(顺序、条件、循环)流程控制语句(顺序、条件、循环)条件语句条件语句 (if-else;switch)(if-else;switch)注意:条件表达式的值为非零表示“真”;值为零则表示“假”。C+无布尔类型;ex 1.switch(val)case 1:cout“case 1”endl;case 2:cout“case 2”endl;default:cout“case not found”endl;若若valval为为1 1,输出结果
11、?,输出结果?循环语句循环语句 (while;for)while;for)for(for(表达式表达式1 1;表达式;表达式2 2;表达式;表达式3 3)语句语句表达式表达式1 1;While(While(表达式表达式2)2)语句语句;表达式表达式3;3;2023-6-420C+函数作用:1、大任务化小时,表示小任务;2、定义方法。文件是编译的独立单位n21m21文件文件文件程序函数函数函数文件函数和文件函数和文件 1 1 作用域作用域 标识符的作用域有:块、函数、文件、全局块、函数、文件、全局 4种 在块和函数内声明的变量作用域是块和函数;在函数外声明的静态全局变量作用域是定义它的文件;全局
展开阅读全文