- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《C基本概念
一.C++语法的外围基础
⒈新的语法规定与新算符
文件扩展名的规定
标准的C++源程序文件扩展名为.CPP,头文件扩展名为.H或.HPP。
标准输入和输出符号
为便于使用,C++语法规定:
标准输出算符:cout“输出内容”…;
标准输入算符:cin“输入内容”…;
上述算符实际上是一种函数,由iostream.h头文件支持。
动态内存分配算符
OO程序对内存空间的动态分配的频繁程度要求简化语言的相关语法的格式。C++语法规定new算符等效于C语言中mal1oc一类的函数功能;free算符等效于C语言中free一类的函数功能。其格式为:
指向对应类型的指针=new 类型描述符;
delete 指向对应类型的指针;
例1:仅占一个单元空间:
int *p;
p=new int; /*意即占一个字长*/
例2:仅占一个单元空间且赋初值:
int *p;
p=new int(20); /*意即占一个字长且赋予初值20*/
例3:占用多个单元可按数组或指针使用:
int *p;
p=new int [20]; /*意即占20个字长单元*/
delete [2]p;
引用类型(References)
在一个程序中用不同的变量名指向同一地址的同一内容的数据类型描述称为引用。这里的引用数据类型名又称为别名。其语法格式是:
类型名& 引用型函数名或变量名[=前已声明的(常)变量名];
例:
int i;
int j=i; /*j是i的别名*/
j=1;
i++;
couti; /*显示为:2*/
引用类型的最大好处是不单独占用额外内存,在实现上是用指针构造的。当在两个函数相互利用参数访问时,可以利用引用类型大量减少的必须经由堆栈实现的数据交换的不足,同时也可以支持双向的内存写操作。
例:
#includeiostream.h
void t(int);
void main()
{ int i=0;
t(i);
cout”i=”i; /*显示1*/
}
void t(int ip)
{coutip;ip++;} /*显示0*/
推论的引出:引用类型的内部机制既然是指针,应能够用做函数的返回类型。试说出下例的输出结果:
例:
#includeiostream.h
int t(int);
void main()
{
int i=0;
cout++t(i);/*显示:?*/
}
int t(int x)
{
return ++x;
}
声明语法与行注释
C++语法规定声明语句的位置可以很灵活,即需即用。
例:
int i=0;
i++;
for(int j=0;j10;j++){…}
j=0;
行注释故名思意仅对一行做注释,符号为://
常量
与C语法不同的是常量可以用于变量的声明语句。
例:
const int i=10;
char t[i];
⒉函数的新变化
声明的变化
C++语言中的一个函数要经过先声明(函数的主要特征—往返传送的数据类型的数量和类型)、再定义(函数的具体过程编写)和函数调用( Function Call)三个步骤。而且C++语言中不再支持缺省返回类型。此外,C++语言中的函数还出现了下述新变化:
⑴内联函数(Inline function)
在函数的声明之前插入“inline”关键字后,该函数便称为内联函数。相对应地处理是C++编译器将编译后得到的内联函数的全部二进制代码全部插入到主程序中的函数调用处,以提高调用速度。
例:
#includeiostream.h
inline int add(int,int);
void main()
{
cout”2+2=”add(2,2);
cout”100+50=”add(100,50);
}
inline int add(int x,int y) {return (x+y);}
⑵缺省参数(Default parameter)
在C++程序中的两个函数发生相互调用时,实际传递的实参数量可以少于形参数量,而缺少的形参值用函数声明时定义的缺省值取代。此种函数的参数声明便称为缺省参数。C++语法规定缺省参数的声明必须自右向左排列。
例:
# includeiostream.h
int sub(int x=1,int y=1)
{ return x-y;}
void main()
{cout sub() sub(5)sub(5,8);}
⑶重载(Overload)
在C++语言中,将含有不同的数量或类型的参数的一系列同名函数称为重载函数。重载函数是软件重用的一种具体实现手段。
例:
#includeiostream.h
void dsp(int i){co
您可能关注的文档
- 《浅谈射箭技术训练的方法步骤.doc
- 《浅谈小古文教学意义和策略.doc
- 《CentOS6.5安装Redis.docx
- 《浅谈小型水电站设计及设备配置.doc
- 《浅谈导游人员的讲解技巧.doc
- 《浅谈小学一年级识字教学方法.doc
- 《CET4英语翻译笔记.doc
- 《浅谈小学中级作文教学.doc
- 《浅谈小学中段英语阅读的步骤与方法.doc
- 《CD大屏幕拼接显示方案.doc
- 第14课 明至清中叶的经济与文化 练习(含解析)高一历史上学期统编版(2019)必修中外历史纲要上.docx
- 数学人教版七年级上册 2.1.1 有理数的加法 课件(共16张PPT).pptx
- 实验 用打点计时器测速度(课件58张PPT)-【扬帆起航系列】高中物理同步备课(人教版2019必修第一册).pptx
- 陆地与海洋复习课件(共47张PPT) 地理商务星球版七年级上册.pptx
- 模块检测七 逻辑与思维(含解析)2026届高中思想政治(部编版)一轮复习练习.docx
- 小学英语外研版(三起)(陈琳主编)六年级下册第七模块测试卷(含答案及听力原文).doc
- 综合与实践 探索年月日的秘密(2)(课件)(共23张PPT)北师大版三年级数学上册.pptx
- 统编版语文一年级上册3 b p m f (课件).pptx
- 模块检测五 当代国际政治与经济(含解析)2026届高中思想政治(部编版)一轮复习练习.docx
- 公司法讲座资料.pptx
文档评论(0)