C++的三种参数传递机制
开发工具与关键技术:Visual Studio C++
作者:华境聪
撰写时间:2019年04月30日
三种参数传递可分为值传递,指针传递,引用传递。
第一种值传递:形参是实参的拷贝,改变形参不影响外部实参的值。值传递是单向的(实参赋值给形参),参数的值只能传入,不能传出。
例如:如下显示
输出结果:
在这里并没有改变实参x和y的值。
第二种指针传递:形参指针对应的是实际参数是地址表达式;
实际参数把对象的地址值赋给形式参数名标识的指针变量。
例如:如下显示:
输出结果显示:
形参为指向实参地址的指针,当对形参的指向操作时,就相当于对实参本身进行的操作
注意:如果是用const修饰的指针变量时,从Main函数传值过来的地址后,就不能进行修改常对象的值,可通过取地址进行修改。
第三种引用传递:形参等于实参的别名,对形参的操作其实就是对实参的操作。
例子:如下显示:
输出如下:
输出的实参和形参的地址相同,这样一来,交换a,b就相当于交换x,y。