const
: 相当于给传入的实参设置只能获取不可以更改的权限
参数模式 | 注解 |
---|---|
int num | 读取权限(Read) , 修改权限(update), 但局部空间结束后,不改变原始值 |
int &num | 读取权限(Read),写入权限(write) |
const int num | 只有读取权限(Read),无写入权限(write) |
void OnStart()
{
int a = 20;
int b = 10;
if(a > b)
{
// swap(a, b);
// swap2(a, b);
swap3(a, b);
Print("修改后a的值: " + string(a));
Print("修改后b的值: " + string(b));
}
}
// 数据类型 参数1 只有读取权限(Read), 在函数内部临时修改权限, 但是最终不会修改原始值
void swap(int num1, int num2)
{
int temp = num1;
num1 = num2;
num2 = temp;
Print("修改后num1的值: " + string(num1));
Print("修改后num2的值: " + string(num2));
}
// 如果加上 引用符号'&', 读取权限(Read),写入权限(write),会最终修改原始值
void swap2(int &num1, int &num2)
{
int temp = num1;
num1 = num2;
num2 = temp;
}
// 只有读取权限(Read), 没有写入权限(write) ,不会原始值
void swap3(const int num1, const int num2)
{
int temp = num1;
Print("temp: " + string(temp));
Print("num1: " + string(num1));
Print("num2: " + string(num2));
}