没有合适的资源?快使用搜索试试~ 我知道了~
引用是别名,声明时必须初始化。实际代码中多用作函数的形参,通过将引用变量用作参数,函数将使用原始数据,而不是其副本。price_count函数的两个形参都是const引用,可以接受const和非constPen,函数内不能对实参进行修改,只能读取。基类引用可以指向派生类对象,而无需进行强制类型转换。实际结果是:可以定义一个接受基类引用作为参数的函数,调用该函数时,可以将基类对象作为参数,也可以将派生类对象作为参数。一般而言,传递类对象参数的标准方式就是按引用传递。数组-------->只能使用指针结构-------->可以使用指针、引用类对象------>使用引用 指针是变量,可以重新
资源推荐
资源详情
资源评论


























C++知识点知识点——整合整合
第一部分 基础知识
一、HelloWorld与命名空间
二、引用和引用参数
引用是别名,声明时必须初始化。实际代码中多用作函数的形参,通过将引用变量用作参数,函数将使用原始数据,而不是其
副本。
2.1引用的定义
2.2 将引用用作函数参数
2.3 将引用用于类对象
price_count函数的两个形参都是const引用,可以接受const和非const Pen,函数内不能对实参进行修改,只能读取。
2.4 引用和继承
基类引用可以指向派生类对象,而无需进行强制类型转换。实际结果是:可以定义一个接受基类引用作为参数的函数,调用该
函数时,可以将基类对象作为参数,也可以将派生类对象作为参数。
2.5 何时使用引用参数
一般而言,传递类对象参数的标准方式就是按引用传递。
数组-------->只能使用指针
结构-------->可以使用指针、引用
类对象------>使用引用
2.6 引用和指针的区别
指针是变量,可以重新赋值指向别的变量(地址)
引用在定义时必须进行初始化,并且不能再关联其它变量。
有空的指针,没有空的引用:(void引用是不合法的)
void &a = 3; //void本质上不是类型,没有void的引用。
三、内联函数
在定义和声明一个函数时加上inline,inline函数应该尽可能简短,且不要做复杂的操作,如浮点运算等。
四、默认参数的函数
4.1 默认参数的使用形式
只需在声明函数时使用如下的形式来指定默认值(定义时不用指定)。
4.2 默认参数的顺序规定
默认参数从右到左逐渐定义;调用函数时,也只能从右到左匹配默认参数(即从左到右使用自定义的值):
对于第二个函数声明,其调用的方法规定为:
五、函数重载(多态)
5.1 函数重载的定义
两个及以上的函数,函数名相同,形参的数目或类型不同,编译器根据参数的类型和个数自动匹配并调用,即函数重载。
注意:
编译器将类型引用和类型本身是为同一特征标,所以下面两个函数原型不能重载:
形参数目和类型相同,只有函数类型不同时,则不可以对函数进行重载。
5.2 extern "C"

extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern "C"后,会指示编译器这部分代码按C
语言的进行编译,而不是C++的。
由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C
语言并不支持函数重载,因此编译C语言代码的函数时不会带上函数的参数类型,一般只包括函数名。
六、函数模板和类模板
在 C++ 中,模板分为函数模板和类模板两种。函数模板是用于生成函数的,类模板则是用于生成类的。
6.1 函数模板
函数模板使用泛型来定义函数,其中的泛型可以用具体的类型(如int或double)替换,因此有时也称为通用编程。
6.1.1 一个类型参数的函数模板
typename可以用class替换。
编译器在编译到Swap(a, b);时找不到函数 Swap 的定义,但是发现实参a、b都是int类型的,用int类型替换Swap模板中的T能
得到下面的模板函数:
同理,编译器在编译到Swap(c, d)时会生成模板函数:
6.1.2 多个类型参数的函数模板
函数模板也可以有多个类型的参数:
6.1.3 函数模板进阶
当函数模板遇上重载和普通函数:
函数模板不允许自动类型转换,普通函数则可以;
编译器会优先选择普通函数,如果函数模板能产生更好的参数类型匹配,则选择函数模板;函数模板也可以重载。
可以通过空模板实参列表的语法限定编译器只通过模板匹配:Swap<>(a, b);
6.2 类模板
6.2.1 单个类模板
6.2.2 继承中的类模板
当子类从模板类继承时,需要让编译器指定基类的具体数据类型,即需要指定基类的参数类型:class B: public A< int >
七、类、对象、封装
7.1 概念
类是创建对象的模板
类是对象的定义,对象是类的实例化,对象的产生离不开类这个模板
对象的三大特性:行为、状态、标识
7.2 定义一个类
在类中定义成员函数:
类中定义的成员函数一般为内联函数,即使没有明确用inline标识
类定义通常放在头文件中
在类之后定义成员函数:
将类定义和其成员函数定义分开
类定义(头文件)是类的外部接口,类的成员函数定义是类的内部实现
7.3 成员函数
7.3.1 成员函数的定义和使用:
类成员函数的重载:
剩余10页未读,继续阅读
资源评论


weixin_38534352
- 粉丝: 5
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 实训报告-网页制作与网站建设项目实战.doc
- 试论互联网+时代事业单位档案管理创新.docx
- PLC控制中央空调节能改造方案设计书1.doc
- 互联网+会计时代-高职《管理会计》课程改革探究.docx
- 基于SNAP网络的实验室监控系统研究设计.doc
- 嵌入式系统程序可移植性设计方案及性能优化.doc
- 单片机电子台历设计方案.docx
- 2017年广西公需科目-“互联网+”开放合作考试及标准答案2(90分).docx
- 抢答器PLC控制系统设计-河南工业大学.doc
- 培训师大计算机采集处理系统.pptx
- 大数据在健康医疗行业中应用概况.pptx
- 慧锦校园网络布线系统措施设计方案.doc
- 机械产品和零件的计算机辅助设计.docx
- 《数据库课程设计方案》实验任务书学时.doc
- 项目管理中如何建立高绩效的研发项目团队.docx
- 基于51单片机的多路温度采集控制系统方案设计书.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
