指针和引用用于函数值传递

Posted OYP

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了指针和引用用于函数值传递相关的知识,希望对你有一定的参考价值。

C++语言中,函数的参数和返回值的传递方式有三种:值传递、指针传递和引用传递。

    以下是“值传递”的示例程序。由于Func1 函数体内的x是外部变量n 的一份拷贝,改变x 的值不会影响n, 所以n 的值仍然是0.

 void Func1(int x)
{
x = x + 10;
}
int n = 0;
Func1(n);
cout << “n = ” << n << endl;// n = 0

    以下是“指针传递”的示例程序。由于Func2 函数体内的x 是指向外部变量n 的指针,改变该指针的内容将导致n 的值改变,所以n 的值成为10.

 void Func2(int *x)
{
(* x) = (* x) + 10;
}
&#8943;
int n = 0;
Func2(&n);
cout << “n = ” << n << endl; // n = 10

    以下是“引用传递”的示例程序。由于Func3 函数体内的x 是外部变量n 的引用,x和n 是同一个东西,改变x 等于改变n,所以n 的值成为10.

 void Func3(int &x)
{
x = x + 10;
}
&#8943;
int n = 0;
Func3(n);
cout << “n = ” << n << endl; // n = 10

以上是关于指针和引用用于函数值传递的主要内容,如果未能解决你的问题,请参考以下文章

值传递,指针传递;引用传递(c++独有)本质

函数何时值传递,何时指针,何时引用传递总结

C++中值传递指针传递引用传递的总结

go的值类型和引用类型1——传递和拷贝

C++ 值传递指针传递引用传递详解

按值传递指针和引用之间的区别?