【C++ 学习笔记】 值传递
值传递分为很多种,有引用传值、指针传值、直接传值。
1. 直接传值
与Java中不同,C++中传递都是复制传值,就是说传值时会新建一个变量并将当前的i复制到函数variablePassing中的变量中。
void main()
{
int i;
variablePassing(i);
}
void variablePassing(int i)
{
}
2. 指针传值
指针是C++中的典型结构,是存储对象的地址的。而&符号还有取地址的意思,所以相当于取得该对象(变量)的地址然后传给函数variablePassing的指针参数i。
void main()
{
int i;
variablePassing(&i);
}
void variablePassing(int* i)
{
}
3. 引用传值
引用传值便是给当前的变量取一个别名。
如 int& a = b; 就是说变量b出了大名b之外还有个别名叫做a。以后用到a就相当于用到b。就像你有个别名叫毛毛,那么叫毛毛的时候就是叫你一样。
void main()
{
int i;
variablePassing(i);
}
void variablePassing(int& j)
{
}