C++之传递形参(数字交换实例)

这个例子是希望可以改变实参本身的值,
但对于下面写的swap函数无法影响到实参本身,
所以要用到传递形参来实现

 
#include <iostream>
void swap(int &v1, int &v2)
{
    int temp = v2;
    v2 = v1;
    v1 = temp;
}
int main()
{
    int i = 10;
    int j = 20;
    std::cout << "Before swap(): \ti: "
         << i << "\tj: " << j << std::endl;
    swap(i , j);
    std::cout << "After swap(): \ti: "
         << i << "\tj: " << j << std::endl;
    return 0;
}

输出:

[root@localhost cpp]# g++ swap.cpp
[root@localhost cpp]# ./a.out
Before swap():  i: 10   j: 20
After swap():   i: 20   j: 10