由于個人習(xí)慣能不用指針的時候盡量不用指針,所以對指針的引用這種用法接觸的非常少泉沾,最近在看essinal c++的模板例子中有用到捞蚂,就記錄一下
一般只在函數(shù)的參數(shù)類型中會用到
void func(int *&p);
之所以參數(shù)的類型需要是指針的引用,是因為如果以int *p做為函數(shù)參數(shù)跷究,函數(shù)內(nèi)部的p并不是傳入的指針本身姓迅,而是指針的一個拷貝。如果僅僅是修改指針指向?qū)ο蟮膬?nèi)容俊马,是沒有問題的丁存,但如果要將指針指向一個新的對象,那么這里就只是這個拷貝的指針指向的對象變了柴我,而原來的指針還是指向原來的對象解寝。
所以在函數(shù)內(nèi)有可能要修改指向指向的時候,需要用指針的引用