您的位置:首页 > Web前端

条款1:仔细区别Pointers和References

2015-01-26 11:34 162 查看
        指针和引用看起来很不一样,指针使用*和->操作符,引用则使用.操作符,但是它们似乎做的是类似的事情。

        首先,需求确认的是,C++用没有空引用(null reference),一个引用必须总代表某个对象,所以既不能指向null,也不能声明变量时不赋初值,也不能在使用过程中改变指向(其实用引用更贴切)值。如果不能满足上述条件,可以考虑使用指针。

        使用引用可能比指针更富效率,因为引用不需要检查是否为空的情况。

        还有一些情况需要使用引用,例如实现某些操作符的时候。最常见的情况就是[],这个操作符需要返回某种“能够被当做assignment赋值对象”的东西。

        例如:vector<int> v(10);

                    v[5]=10;//这样是引用,如果是指针的话应该是*v[5]=10;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: