看到这篇文章的童鞋或许会有疑惑,这不是之前 已经出过了吗,是的但是之前那篇文章可能不太好理解,因此我再写一篇便于大家理解的文章
那么上一篇文章已经帮大家过渡到C嘎嘎了,那么这篇文章我们继续讲解C嘎嘎的知识点。
C嘎嘎中的引用
引用概念方面:理解为起别名或者起绰号即可
格式:int& 新变量名 = 原变量名;注意:这里的&要与前面的类型放一起,属于是引用类型
函数传参是想要传常量参数给形参时,形参必须要用const修饰,
常引用
const int& 变量名 = 数值;eg.const int& x = 1;
右值引用
只能给运算符右边起别名
const int&& 变量名 = (数值) ; eg.const int&& x = 1; //常量是右值(运算符的右边)
传参时的引用
益处:可以增加一个可以修改的接口
常引用
右值引用与常引用的区别
右值引用可以修改变量的值,常引用不可以
引用的作用
1. 函数传参(防止拷贝产生)
2. 函数返回值(增加左值的使用)
3. 不能返回局部变量的引用
返回引用
返回引用的表示返回变量本身
函数思想
内联函数
关键字:inline
以牺牲空间的方式提高效率,一般短小精悍的函数可以内联(宏也是短小精悍)
概念:编译完后以二进制的形式存在,一般在类或结构体中实现的函数是默认内联函数
函数重载
概念:允许同名不同参数函数存在
1. 参数数目不同
2. 参数类型不同
3. 参数顺序不同(一定建立在不同类型的基础上)
那么这张图片里的函数优先会调用与它类型相同的。
函数的缺省
函数缺省这里只需要知道全缺省和半缺省即可
int add(int i = 0, int b = 2)//全缺省参数
int add(int i, int b= 2)//半缺省参数
另外写缺省时,必须要参数之间不能出现以下这种情况
那么本篇文章的内容就先到这里啦,希望对各位童鞋有所帮助