1、传参
1.1 参数传递机制
实参传给形参过程中,会把实参放在临时内存,然后形参取引用,所以在函数中无法直接修改实参。
1.2、传递实参指针
把实参的地址给到形参,但传递机制是形参取该地址的值
int a=10;
int b =add(&a); 把实参的地址给到形参
int add(int* num)
{
num += 1;
return 0;
}
1.3 传递数组实参
1.4、引用实参
引用实参,这时形参就是实参
int a = 10;
int b = add(a);
int add(int& num)
{
num += 1;
return 0;
}
1.5、引用实参,形参添加const
int add(const int& num) // 实参不可修改
{
num += 1;
return 0;
}
另外如果实参是const ,形参也要添加const
2、返回值
2.1 返回指针
针对函数中的局部值返回,由于函数调用完后,局部数据会被释放,所以需要用new 开辟内存空间,再返回指针
int *add(int num)
{
int *res = new int(0);
*res=num+ 1;
return res;