條款1:仔細區別Pointers和References

        指針和引用看起來很不一樣,指針使用*和->操作符,引用則使用.操作符,但是它們似乎做的是類似的事情。
        首先,需求確認的是,C++用沒有空引用(null reference),一個引用必須總代表某個對象,所以既不能指向null,也不能聲明變量時不賦初值,也不能在使用過程中改變指向(其實用引用更貼切)值。如果不能滿足上述條件,可以考慮使用指針。
        使用引用可能比指針更富效率,因爲引用不需要檢查是否爲空的情況。
        還有一些情況需要使用引用,例如實現某些操作符的時候。最常見的情況就是[],這個操作符需要返回某種“能夠被當做assignment賦值對象”的東西。
        例如:vector<int> v(10);
                    v[5]=10;//這樣是引用,如果是指針的話應該是*v[5]=10;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章