收藏 分销(赏)

C++的基本语法市公开课获奖课件省名师优质课赛课一等奖课件.ppt

上传人:人****来 文档编号:6463149 上传时间:2024-12-09 格式:PPT 页数:33 大小:715.54KB 下载积分:12 金币
下载 相关 举报
C++的基本语法市公开课获奖课件省名师优质课赛课一等奖课件.ppt_第1页
第1页 / 共33页
C++的基本语法市公开课获奖课件省名师优质课赛课一等奖课件.ppt_第2页
第2页 / 共33页


点击查看更多>>
资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,大连理工大学软件学院,*,单击此处编辑母版标题样式,本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考,不能作为科学依据。本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考,不能作为科学依据。,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考,不能作为科学依据。本资料仅供参考,不能作为科学依据。谢谢。本资料仅供参考,不能作为科学依据。,第,2,章,C+,基础,C+,语言程序设计教程,大连理工大学软件学院,1/33,第,2,章,C+,基础,大连理工大学软件学院,2.5,数据结构与数据访问,2.4,程序结构,2.3,流程控制,2.2,基本数据类型及操作,2.1,简单,C+,程序结构,2,2/33,大连理工大学软件学院,第,2,章,C+,基础,/,my first program in C+,#include,using namespace std;,int main(),cout idc;,coutidy?x:y;,return z;,float max(float x,float y),;,max(3.6,4.8);,申明与调用异同?什么时候需要申明?申明还能够写在哪里?,9,9/33,大连理工大学软件学院,第,2,章,C+,基础,对上面,max,写出完整定义、申明、调用,在,VC+,中实现。,把申明写在头文件中。,10,10/33,第,2,章,C+,基础,函数,参数,传递,返回值,调用,void swap(int iA1,int iB1)/,函数定义,int iC1;,iC1=iA1;,iA1=iB1;,iB1=iC1;,int main(),int iA=3,iB=4;,void swap(int iA1,int iB1);/,函数申明,swap(iA,iB);/,函数调用,coutiA=iAiB=iB;,return 0;,11,大连理工大学软件学院,11/33,第,2,章,C+,基础,函数,参数,传递,返回值,调用,int getRand(),int iRand1;,srand(time(0);,iRand=rand()%100+1;,return iRand;,int main(),int iResult;,int getRand();,iResult=getRand()%7;,coutab;/,输入,a,b,两变量值,swap(a,b);/,直接以变量,a,和,b,作为实参调用,swap,函数,couta b;/,输出结果,return 0;,形参为实参别名,形参不开辟空间,比写成指针情形可读性强,25,25/33,大连理工大学软件学院,第,2,章,C+,基础,引用访问,3,常引用,常引用申明普通形式:,const,类型标识符,&,引用名,=,目标变量名,;,用这种方式申明引用,不能经过引用对目标变量值进行修改。,int a;const int,ra=1;a=1;,同一个数据采取不一样访问方式会有不一样权限,这让代码愈加健壮。,void f(int,下面函数调用是非法:,const int i=5;f(i);,i,是,const,。试图将一个,const,类型对象转换为非,const,类型。,若把,f,定义为:,void f(const int,f(i),调用正确。,若函数,f,中不需要改变形参数据情形,引用型参数应该尽可能定义为,const,类型。假如既要利用引用提升程序效率,又要保护传递给函数数据不在函数中被改变,就应使用常引用,这也符合软件工程最小权限标准。,26,26/33,大连理工大学软件学院,第,2,章,C+,基础,引用访问,4,引用作为返回值,要以引用返回函数值,则函数定义时要按以下格式:,类型标识符,&,函数名(形参列表及类型说明),函数体,说明:,(,1,)以引用返回函数值,定义函数时需要在函数名前加,&,。,(,2,)用引用返回一个函数值最大好处是,,在内存中不产生被返回值副本,。,(,3,)引用作为返回值,,不能返回局部变量引用,。主要原因是局部变量会在函数返回后被销毁,所以被返回引用就成为了“,无所指,”引用,程序会进入未知状态。,27,27/33,大连理工大学软件学院,第,2,章,C+,基础,引用访问,4,引用作为返回值,#include,using namespace std;,int,int vals10;int error=-1;,void main(),put(0)=10;/,以,put(0),函数值作为左值,等价于,vals0=10;,put(9)=20;/,以,put(9),函数值作为左值,等价于,vals9=20;,coutvals0;cout=0&n=9),return valsn;,else coutsubscript error;return error;,28,28/33,大连理工大学软件学院,第,2,章,C+,基础,指针作函数,swap,参数交换数据。,引用作函数,swap,参数交换数据。,29,29/33,大连理工大学软件学院,第,2,章,C+,基础,动态空间,1,new,运算符:开辟指定大小存放空间,并返回该存放区起始地址。,new,普通格式:,类型说明符 *指针变量名,=new,类型说明符,;,申请一个类型说明符大小空间赋值给指针变量。,类型说明符 *指针变量名,=new,类型说明符,整型表示式,;,申请整形表示式乘以类型说明符大小空间赋值给指针变量。,比如:,float*p1=new float;,在堆空间中开辟一个,float,类型空间,并把其地址赋值给,p1,。,float*p2=new float10;,堆空间中开辟,10,个,float,类型空间,并把其地址赋值给,p2,。,30,30/33,大连理工大学软件学院,第,2,章,C+,基础,动态空间,2.delete,运算符:释放,new,开辟存放空间。,delete,普通格式:,delete,指针变量名,;,释放指针变量名所指向空间,但该空间必须由,new,申请,delete,指针变量名,;,释放指针变量名所指向,数组,空间,但该空间必须由,new,申请,比如:,delete p1;,释放,p1,所指向,float,空间。,delete p2,;,31,31/33,C+,与,C,语言,动态空间申请,int *p1=(int*)malloc(sizeof(int)*length);,int *p2=new intlength;,delete objects;/,释放数组使用方法,delete objects;/,释放单个使用方法,32/33,32,new,和,malloc,分配内存区分,1,、,new,是,c+,中操作符,,malloc,是,c,中一个函数,2,、,new,不止是分配内存,而且会调用类,结构函数,,同理,delete,会调用类,析构函数,;而,malloc,则只分配内存,不会进行初始化类组员工作,一样,free,也不会调用析构函数,3,、内存泄漏对于,malloc,或者,new,都能够检验出来,33/33,33,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服