C++ 基础函数
(一) 函数的参数传递
在没有调用函数之前, 函数的形参并没有占据实际的空间.
1, 值传递
传入的仅仅只是一个值 -- 就是把实参的值赋给形参. 形参自己会在内存中开辟一个空间!
2, 传引用
这种参数传递的方法就是给实参重新起了一个名字, 实际上空间还是在原有的空间上对变量进行操作!
3, 传地址
这种传参数的方式就是传一串地址, 所以函数里面的一系列对参数进行的操作仍然是在原有的空间上进行操作.
(二) 默认参数
1 所有参数有默认值
带有部分默认值得参数
这个时候对默认参数值的参数必须写下后面! 这个参数的默认值在声明的时候有了, 那么在定义的时候就不要重复定义了, 否则就会出错!
- #include <iostream>
- using namespace std;
- void m(int a, int b = 9);
- void m(int a, int b = 9)// 重复定义的含有默认值的参数 -- 编译报错!
- {
- int c;
- c=a + b;
- }
- void main()
- {
- int b = 2, c = 3;
- m(c);
- }
备注: 关于函数默人参数值, 在后面我们学习类的类型转换还会有接触的.
(三) 内联函数
内联函数不是在调用时发生的控制转移, 而是在编辑是将函数体嵌入在每一个函数调用处. 这样节省了参数传递, 控制转移等开销!
关键字 --inline 函数类型 函数名 (参数列表){函数体};
但是声明为 inline 的函数仅仅只是一个要求, 编译器并不一定承诺将其声明为内联函数! 而且声明为内联函数的函数一定要结构简单.
来源: http://www.bubuko.com/infodetail-3273022.html