指针和引用的区别
2014-09-14 16:29
267 查看
指针和引用的区别和联系
1.指针是一个变量,只不过改变了存储的是地址,指向内存的一个存储单元;而引用是变量的一个别名
3)指针可以是多层的,例如**a,而引用没有
4)引用没有const,而指针有
5.引用肯定会指向一个对象,应被初始化
6.不存在指向空值的引用,这个事实意味着使用引用的代码效率比使用指针的要高。因为在使用引用之前不需要测试它的合法性
7.指针可被重新赋值以指向不同的对象,但引用总是指向在初始化时。
在more effective c++中描述
在以下情况应该使用指针:
一是考虑到存在不指向任何对象的可能(可设置空指针)
二在不同的时刻指向不同的对象(可改变指针),如果总指向一个对象并一旦指向一个对象就不会改变指向,那么用引用。
三,如果重载某个操作符,使用引用。例如
vector<int> v(10);//建立整型向量,大小为10
v[5]=10//这个被赋值的目标对象就是操作符[]返回的值
*v[5]=10;//如果操作符返回一个指针,则这是正确写法。
1.指针是一个变量,只不过改变了存储的是地址,指向内存的一个存储单元;而引用是变量的一个别名
3)指针可以是多层的,例如**a,而引用没有
4)引用没有const,而指针有
5.引用肯定会指向一个对象,应被初始化
6.不存在指向空值的引用,这个事实意味着使用引用的代码效率比使用指针的要高。因为在使用引用之前不需要测试它的合法性
7.指针可被重新赋值以指向不同的对象,但引用总是指向在初始化时。
在more effective c++中描述
在以下情况应该使用指针:
一是考虑到存在不指向任何对象的可能(可设置空指针)
二在不同的时刻指向不同的对象(可改变指针),如果总指向一个对象并一旦指向一个对象就不会改变指向,那么用引用。
三,如果重载某个操作符,使用引用。例如
vector<int> v(10);//建立整型向量,大小为10
v[5]=10//这个被赋值的目标对象就是操作符[]返回的值
*v[5]=10;//如果操作符返回一个指针,则这是正确写法。
相关文章推荐
- C++点滴:向函数中传递指针和传递指针的引用的区别:
- 引用与指针的区别
- 指针与引用的区别
- 引用和指针的主要区别
- 指针和引用的区别
- 指针和引用的区别总结
- 引用与指针的区别(转载)
- 指针与引用的区别
- 指针和引用的区别
- 指针与引用的区别(More Effective C++)
- 引用和指针的使用区别
- 指针与引用的区别(摘自Effective C++)
- C++中引用和指针的两个重要区别
- C++中指针(pointer)和引用(reference)的区别和联系
- 指针与引用的区别
- 指针和引用的区别
- c++中指针,指针的引用,指针的指针的区别
- 指针与引用的区别 (MoreEffictive C++)
- 指针与引用的区别
- 指针与引用的区别