![数据结构课件:C++内容总结_第1页](http://file4.renrendoc.com/view/318f0aeb2c166e470c7b096cd69695eb/318f0aeb2c166e470c7b096cd69695eb1.gif)
![数据结构课件:C++内容总结_第2页](http://file4.renrendoc.com/view/318f0aeb2c166e470c7b096cd69695eb/318f0aeb2c166e470c7b096cd69695eb2.gif)
![数据结构课件:C++内容总结_第3页](http://file4.renrendoc.com/view/318f0aeb2c166e470c7b096cd69695eb/318f0aeb2c166e470c7b096cd69695eb3.gif)
![数据结构课件:C++内容总结_第4页](http://file4.renrendoc.com/view/318f0aeb2c166e470c7b096cd69695eb/318f0aeb2c166e470c7b096cd69695eb4.gif)
![数据结构课件:C++内容总结_第5页](http://file4.renrendoc.com/view/318f0aeb2c166e470c7b096cd69695eb/318f0aeb2c166e470c7b096cd69695eb5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C++内容总结1.输入输出语句cout<<代替printf()cin>>代替scanf()例:scanf(“%d%d”,&x,&y);cin>>x>>y;(x,y事先定义为整型)scanf(“%7.2f%d%c”,&x,&y,&z);
cin>>x>>y>>z;使用cin输入时,空格、Tab键、回车键都被当作分隔符或结束符,所以无法接收上述按键。cin.getline()接收一个字符串,可接收空格。cin.getline(字符指针,字符个数N,结束符);//一次读取多个字符(包括空格,直到读满N-1个,或者遇到指定的结束符为止,默认以'\n'结束。)例如:chara[20];cin.getline(a,20);cin.getline(a,20,'\n');printf(“%d,%d,%d,%d”,i,j,m,n);cout<<i<<“,”<<j<<“,”<<m<<“,”<<n;//引号内部分原封不动输出到屏幕printf(“x=%dy=%d\n”,x,y);cout<<“x=”<<x<<“”<<“y=”<<y<<endl;//endl相当于“\n”,表示回车换行C++优点:用cout和cin后,不需要指定格式。2.const常量修饰符用const修饰过的变量,在程序执行期间其值不会被改变,所以可代替常量宏定义。例:constintMaxSize=50;
相当于
#defineMaxSize50const常量的优点:宏定义无类型,只进行简单替换。而const常量提供类型检查。3.引用变量&在本书中,“引用”仅仅是用在函数定义的形参中。它表示:在函数调用时,系统会自动取实参的地址传给函数,函数实际操作的就是实参本身,是传址调用。4.动态内存分配和释放用关键字new和delete动态分配内存和释放内存。new和delete类似于C语言中的函数malloc()和free(),功能类似但又优于这两个函数。动态申请变量空间语法:p=newtype;//申请内存空间,返回指向该内
指针
类型名存空间的地址。若分配失败,则返回空指针。例:p=newint;
说明:为整型变量分配了一块内存空间。指针p指向该空间,即p存放的是这块空间的首地址。比较:inta;p=&a;
但这是静态分配内存空间,a占用的空间不能随意释放。
p=newLNode;
说明:为LNode类型的变量分配一块空间,也就是动态生成一个LNode类型的结点。指针p指向该结点。
释放空间语法:deletep;动态申请和释放数组空间申请数组空间:
p=newtype[size];//p是指向数组的指针
//size为数组元素的个数例:p=newint[3];
释放数组空间:delete[]p;5.函数重载和运算符重载函数重载是指:在同一程序中可以定义多个同名函数,它们通常具有相似的功能。但这些同名函数的参数类型、参数个数、返回值类型、函数功能可以完全不同。编译系统将根据函数参数的类型和个数来判断调用哪一个函数。#include<iostream.h>intabs(intx)
//形参为整型{returnx>0?x:-x;}doubleabs(doublex)
//形参为双精度型{returnx>0?x:-x;}voidmain(){intx1=4;doublex2=5.5;cout<<"|x1|="<<abs(x1)<<endl;//调用函数intabs(intx)cout<<"|x2|="<<abs(x2)<<endl;//调用doubleabs(doublex)}5.函数重载和运算符重载运算符重载:对已有的运算符进行重新定义,使之适用于新的数据类型,进行类似运算。运算符重载的实质就是函数重载。在本书中,只有当数据元素为struct类型时才用到运算符重载。运算符重载规则
不可定义新的运算符:C++的运算符除了少数几个之外,全部可以重载,而且只能重载已有的运算符。重载之后运算符的优先级和结合性都不会改变,并且要保持原运算符的语法结构。不能改变运算符原有的功能。运算符重载函数的定义
运算符重载函数的一般定义格式如下:若运算符为一元运算符时,<参数表>有一个形参;若为二元运算符,则有两个形参。<返回值类型>operator<运算符>(<参数表>){<函数体>;}运算符重载函数的调用
采用一般使用运算符的格式:1)一元运算符:#objoperator#(obj)
2)二元运算符:
obj1#obj2operator#(obj1,obj2)6.其他可以把变量的类型说明靠近它使用的地方例:for(inti=0;i<5;i++)//在使用i的地方定义它为整型
voidInitList(List&L)//形参的类型说明放在形参表中函数定义中
1)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《大学物理(下册)》课件-第16章
- 融资融券业务操作方法及技巧介绍
- 2025年全球及中国自主机器人街道吸尘器行业头部企业市场占有率及排名调研报告
- 2025年全球及中国商店可视化工具行业头部企业市场占有率及排名调研报告
- 2025年全球及中国数通硅光芯片行业头部企业市场占有率及排名调研报告
- 2025年全球及中国固体葡萄糖浆行业头部企业市场占有率及排名调研报告
- 2025年全球及中国房屋装修和翻新行业头部企业市场占有率及排名调研报告
- 2025年全球及中国立式高温反应釜行业头部企业市场占有率及排名调研报告
- 2025年全球及中国输注穿刺耗材行业头部企业市场占有率及排名调研报告
- 2025年全球及中国微波波导衰减器行业头部企业市场占有率及排名调研报告
- 《中国心力衰竭诊断和治疗指南(2024)》解读完整版
- 《档案管理课件》课件
- 2025年中考物理终极押题猜想(新疆卷)(全解全析)
- 胫骨骨折的护理查房
- 抽水蓄能电站项目建设管理方案
- 电动工具培训课件
- 《智能网联汽车智能传感器测试与装调》电子教案
- 视频会议室改造方案
- 【中考真题】广东省2024年中考语文真题试卷
- GB/T 32399-2024信息技术云计算参考架构
- 2025年湖南省长沙市中考数学模拟试卷(附答案解析)
评论
0/150
提交评论