背景
在写函数时,需要传出数据
以下进行整理
需要熟悉指针和引用
引用的本质是指针,目的是减少*
1,传出数据
方法1:输入指针,传出数据
void get_value(int *data)
{
*data = 3;
}
viod mian()
{
int a =0;
get_value(&a);
//此时a =3
}
方法2:使用引用(本质也是指针)
void get_value(int &data)
{
data = 3;
}
viod mian()
{
int a =0;
get_value(a);
//此时a =3
}
2,传出指针
方法1,输入指针的指针,输出指针
方法2,输入指针的引用,输出指针
方法2:
void get_value(int* &data)
{
data = 3;
}
viod mian()
{
int* a =null;
get_value(a);
//此时a =3
}
3,传出指针数组 (输出,装着指针的数组)
输入指针的指针 这里没有使用引用,使用引用为同理
void get_value(int** data)
{
data[0] = 3;
}
viod mian()
{
int** a =null;
get_value(a);
//这里a[0]为3
//int **a 此时a[0]是地址 a 是地址的地址
//对比 int a[] ,a[0]是值,a是地址
}