指针和引用的区别
2012-06-04 10:57
127 查看
1 非空区别:
在任何情况下都不能使用指向空值的引用,而指针却可以。
不存在指向空值的引用这个事实意味着使用引用的代码效率比使用指针的要高。
2 合法性区别:
在使用引用之前不需要测试它的合法性。相反,指针则应该总是被测试,防止其为空。
3 可修改区别:
指针可以被重新赋值以指向另一个不同的对象,但是引用则总是指向在初始化时被指定的对象。
4 应用区别:
考虑用指针的情况:
1)考虑到存在不指向任何对象的可能。
2)需要能够在不同的时刻指向不同的对象。
考虑用引用的情况:
总是指向一个对象,并且一旦指向一个对象后就不会改变指向,那么就应该使用引用。
在任何情况下都不能使用指向空值的引用,而指针却可以。
不存在指向空值的引用这个事实意味着使用引用的代码效率比使用指针的要高。
2 合法性区别:
在使用引用之前不需要测试它的合法性。相反,指针则应该总是被测试,防止其为空。
3 可修改区别:
指针可以被重新赋值以指向另一个不同的对象,但是引用则总是指向在初始化时被指定的对象。
4 应用区别:
考虑用指针的情况:
1)考虑到存在不指向任何对象的可能。
2)需要能够在不同的时刻指向不同的对象。
考虑用引用的情况:
总是指向一个对象,并且一旦指向一个对象后就不会改变指向,那么就应该使用引用。
相关文章推荐
- C和C++中const的区别,引用,一级指针和const组合
- 引用与指针的区别
- 引用和指针的区别
- 指针和引用的区别
- 初级篇——指针(*)、取地址(&)、解引用(*)与引用(&)的区别
- 指针和引用的区别
- 指针与引用的区别
- 指针与引用的区别
- 指针和引用区别?
- 引用与指针的区别
- 指针和引用的联系与区别
- 指针和引用的区别
- C++中引用和指针的区别
- C++点滴:向函数中传递指针和传递指针的引用的区别:
- java的引用明明和指针没什么本质区别,java为什么还宣称没有指针并把这个当作语言的优点?
- C++小知识之指针和引用的区别
- c++引用与指针的区别
- 指针与引用的区别
- 通过汇编代码看引用和指针的区别
- 指针和引用的区别