使用C ++我想知道使用C ++的不同之处是什么?和*参数?
例如:
void swap(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
}
显然会交换整数a和b。但是,以下功能不会完全相同吗?
void swap(int *a, int *b)
{
int temp = *b;
*b = *a;
*a = temp;
}
我只是想知道何时使用每一个,以及每一个的优点。
答案 0 :(得分:3)
指针和引用之间的区别在于指针可以指向“无”,而引用则不能指向“无”。你的第二个样本应该在取消引用它们之前检查指针;没有必要使用参考文献。