分类: C/C++
2007-02-22 19:22:17
引用和指针的使用区别
引用定义时必须初始化
引用初始化的方式:
1 object &a = object();
2 在构造函数的初始化列表里进行
引用定义后引用对象的地址不得再改变.
引用的内存不能删除,一般为栈变量。
引用应用于2种情况:
函数的形参
引用其实就是指针,但它比一般指针更安全,因为它不会什么都不引用,也不会改变所指;再就是它比一般指针更美观。
类成员的定义
例2:class MyClass {
Class_B & i_object;
public:
MyClass(Class_B & a_init) :i_object(a_init) {...}
...
};
这里类成员使用了引用类型,这个整个类的设计带来了便利,减少了异常处理的开销(人和机器都省了)。如果使用指针的话,每个MyClass的成员函数都要在使用 i_object时考虑空指针的情况。