1. 引用变量
c++相比c语言的一个特性是有引用变量,引用变量的主要作用是用作参数,在调用函数时传递原始数据而不是副本,即在传递参数时,如果形参是声明的引用变量类型,则在传递实参时,是传递原始数据,通过形参的任何修改会影响到实参。
1.1. 例子
// 2023-5-3-CPP函数探幽.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
void swap(int& a, int& b);
void swap1(int a, int b);
int main()
{
using namespace std;
int a = 11, b = 22;
cout << "a=" << a << endl;
cout << "b=" << b << endl;
swap1(a, b);
cout << "a=" << a << endl;
cout << "b=" << b << endl;
swap(a, b);
cout << "a=" << a << endl;
cout << "b=" << b << endl;
system("pause");
}
void swap(int& a, int& b)
{
int c = a;
a = b;
b = c;
}
void swap1(int a, int b)
{
int c = a;
a = b;
b = c;
}
1.1.1. 防止修改变量的值
在使用引用变量时,如果想要防止修改参数的值,在形参前面加上const
修饰符。
// 2023-5-3-CPP函数探幽.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
int refcube(int& a);
int main()
{
using namespace std;
int a = 10;
cout << refcube(a) << "=cube of " << a << endl;
system("pause");
}
int refcube( int& a)
{
a *= a * a;
return a;
}
//编译器报错
//int refcube(const int& a)
//{
// a *= a * a;
// return a;
//}
结果: