- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C02《C的新增语法零星部分》
C++02《C++的新增语法零星部分》
C++第二次课,2004.2.18 《C++的新增语法零星部分》
一、C++的新增语法(零星部分)
7.(P77)引用 【重点】【难点】
引用类型的引入
新数据类型(有点像指针类型):引用类型
写法:基类型 引用名; 如:int ref;
理解:是别名! 不是变量!
引用类型在说明时必须进行初始化,除非用作函数的参数或返回值
引用不能改指
const变量的引用:
const int i;
const int ref = i; // const 不能省
引用不是变量,不能说明引用的引用,也不能说明引用数组或指向引用的指针
但是可以说明对指针的引用:
int *a; // a无所指
int * p = a; // a仍无所指
int b;
p = b; // a指向b了
引用的用途之一:函数参数的引用传递
【P78的例3-12,3-13】
*引用的另一个用途:函数能出现在赋值运算符的左边
int a[8] = {0, 1, 2, 3, ……, 7 };
int index(int i);
void main()
{
index(2) = 10;
cout a[2];
}
int index(int i)
{ return a[i];
}
8.(P81)带默认形参值的函数(缺省参数)
自右向左定义
9.(P80) inline函数修饰符(内联函数),带参宏的代替物
适合于短小函数体的函数
10.(P83)函数重载 【重点】
根据参数个数和类型区分不同的函数
不根据参数名区分
不根据返回值类型区分
建议不要将不同功能的函数重载——虽然你可以做
【P84的例3-16】
*“最佳匹配”与隐式类型转换:f(double,double)已定义的情况下“f(1, 1.5);”会进行1-1.0的隐式类型转换,但若重载了f(int, double),则不会转换。
*重载函数和缺省参数连用产生二义的例子
11.(P85)函数模板
函数模板的引入
可以用宏实现,也可用重载来实现
写法: template typename T
……
函数模板会随着编译的进行不断产生函数,函数模板产生的函数叫模板函数
比宏可靠得多,比重载机制代码少得多
【P86的例3-17】
每个函数模板前都要有各自的template语句
*由于编译器先找普通函数,再找函数模板的实例化函数,故可用特定模板函数来阻止编译器从模板产生函数。
顺序查找函数模板:
template typename T
int Sort(T atom[], int nCount, T key)
{
int i, j;
for (i = 0; i nCount; i++)
if (atom[i] == key)
return i;
return -1;
}
两数交换的函数模板:
template typename T
void Swap(T a, T b) // 不必用指针型参数了
{
T temp;
temp = a;
a = b;
b = temp;
}
=========================================================================================================
实验一:
实验名称:《C++新增零星语法辨析》
实验目的:熟悉VC编程环境;加深对C++新增语法的正确书写格式的认识
实验要求:
选Win32 Console Application创建一工程(Project),然后进行下列任务:
任务一:试验下列有关符号常量写法是否都合法:
A. const int COUNT = 100;
B. int const COUNT = 100;
C. const int COUNT;
COUNT = 100;
任务二:试验下列有关缺省参数的程序写法是否都合法:
A. int add(int a = 1, int b = 2);
void main()
{ cout add(3);
}
int add(int a, int b)
{ return a + b;
}
B. int add(int a, int b);
void main()
{ cout add(3);
}
int add(int a = 1, int b = 2)
{ return
您可能关注的文档
- 8WORD使用技能.doc
- 8_7综合实例_个人银行账户管理程序.doc
- 8个不兼容IE 8的CSS样式写法.doc
- 8个月宝宝的作息表和副食介绍 - 妞妞的小猪窝-生日快乐 - 日记.doc
- 8导出坐标.doc
- 8岁~12岁儿童气质问卷.doc
- 8年会计.doc
- 8心情○面对小人.doc
- 8年项目开发总结.doc
- 8月16日 深具磁性的人.doc
- springbooot+vue基于java的房屋维修系统毕业论文.doc
- 中国消防救援学院《单片机系统实验》2023-2024学年第一学期期末试卷.doc
- 2025年溧阳纺织化学品项目申请.pptx
- 景区门票包销合同模板(3篇).docx
- 【股票技术指标学习指南】第七章第三节货币需要量的测算.doc
- 2025春 _ 人教版七年级英语下册【unit4】看音标写单词.doc
- 2025春 _ 人教版七年级英语下册【unit5】看音标写单词.doc
- 2025春 _ 人教版七年级英语下册【unit6】看音标写单词.doc
- 2025春 _ 人教版七年级英语下册【unit7】看音标写单词.doc
- 2025春 _ 人教版七年级英语下册【unit8】看音标写单词.doc
最近下载
- 佳能 G1000 1500 1800 2000 2800 3000 3800 维修手册.pdf VIP
- 2025贵州七星关区洪山街道中心校(毕节四小)教师“跨校竞聘”工作笔试参考题库附答案解析.docx VIP
- 2025贵州毕节七星关区碧阳街道中心校(毕节二十二小)教师“跨校竞聘”34人笔试参考题库附答案解析.docx VIP
- 2025贵州毕节七星关区实验学校教师“跨校竞聘”60人笔试参考题库附答案解析.docx VIP
- 2025贵州毕节七星关区德溪街道中心校(毕节市七星关区第五实验学校)教师“跨校竞聘”24人笔试备考题库及答案解析.docx VIP
- 肾性贫血治疗现状及特征(罗沙司他).pptx VIP
- 哮喘慢阻肺重叠综合征.ppt VIP
- 王文娟首演版越剧《孟丽君》剧本.doc VIP
- 小学教研讲座专题:如何教语文.ppt VIP
- 某物流园区项目施工组织设计方案措施.pdf VIP
文档评论(0)