C++ 快速上手 (二)

1. 变量的引用

引用(reference)是C++对C的一个重要扩充。

在C++中,变量的“引用”就是变量的别名。

int a;
int &b = a;
//声明了b是a的“引用”,即a的别名。经过这样的声明后,使用a或b的作用相同,都代表同一变量。对变量声明一个引用,应不另开辟内存单元,b和a都代表同一个变量单元。

2.  将引用作为函数参数

(1)传递变量的指针

#include<iostream>
using namespace std;
void swap(int *p1, int *p2)
{
  int temp;
  temp = * p1;
  *p1 = *p2;
  *p2 = temp;
}
int main()
{
  int i = 3, j = 5;
  swap(&i, &j);
  cout << i << "," << j << endl;
  return 0;
}

(2) 传递变量的别名

#include<iostream>
using namespace std;
void swap(int &a, int &b)
{
  int temp;
  a = b;
  b = temp;
}
int main()
{
  int i = 3, j= 5;
  swap(i, j);
  cout << "i=" << i << " " << "j=" << j << endl;
  return 0;
}

 使用指针变量和使用指针变量之间的区别。

a. 不必在swap函数中设立指针变量,指针变量要另外开辟内存单元,其内容是地址。而引用不是一个独立的变量,不单独占内存单元,在本例中其为一个整数。

b. 在main函数中调用swap函数时不必在变量名前加&来表示地址。

c. 使用指针变量时,为了表示指针变量所指向的变量,必须使用指针运算符*,而使用引用时,引用就代表该变量,不必使用指针运算符*。

d. 用引用能完成的工作,用指针也能完成。但是引用比指针直接了当。

posted on 2012-12-22 08:02  cosmo89929  阅读(732)  评论(0)    收藏  举报

导航