C++ 传值调用
向函数传递参数的 传值调用 方法,把参数的实际值复制给函数的形式参数
这种情况下,修改函数内的形式参数不会影响实际参数
默认情况下,C++ 使用 传值调用 方法来传递参数
这意味着函数内的代码不会改变用于调用函数的实际参数
我们写一个范例,看看
/** * file: main.cpp * author: 简单教程(www.twle.cn) * * Copyright © 2015-2065 www.twle.cn. All rights reserved. */ #include <iostream> void swap(int x, int y) { int temp; temp = x; /* 保存地址 x 的值 */ x = y; /* 把 y 赋值给 x */ y = temp; /* 把 x 赋值给 y */ return; } int main () { // 局部变量声明 int a = 64; int b = 256; std::cout << "交换前,a 的值:" << a << std::endl; std::cout << "交换前,b 的值:" << b << std::endl; /* 调用函数来交换值 */ swap(a, b); std::cout << "交换后,a 的值:" << a << std::endl; std::cout << "交换后,b 的值:" << b << std::endl; return 0; }
编译和运行以上范例,输出结果如下:
交换前,a 的值:64 交换前,b 的值:256 交换后,a 的值:64 交换后,b 的值:256
范例表明了,虽然在函数内改变了 a 和 b 的值,但是实际上 a 和 b 的值没有发生变化