C++语言程序设计

下面的main函数说明调用三个函数时的区别：

| 例7-15

void main (void)
{
int i = 10, j = 20;
Swap1(i, j);
cout << i << ", " << j << '\n';
Swap2(&i, &j);
cout << i << ", " << j << '\n';
Swap3(i, j);
cout << i << ", " << j << '\n';
}

main函数运行结果如下：
10, 20
20, 10
10, 20
我们看到函数Swap3与Swap2的效果一样，都达到了交换的目的，但Swap3更直观，调用它的方法与调用Swap1的方法是一样的。但是，引用作为函数参数，调用时可能会出现歧义，例如：
void fn(int s)
{
…
}
void fn(int& t)
{
…
}
void main()
{
int a=5;
fn(a); //匹配哪一个函数？
}
当以引用方式传递函数参数时，我们常使用const关键字。例如：
void f1(const int i) {
i++; // 非法，编译错误
}
这可以避免在函数中修改了不该修改的参数，有助于提高程序的可靠性。