使用引用進行函數(shù)的引用調(diào)用? : 把某一變量的地址賦給函數(shù)中的一個引用變量;
引用參數(shù):? 是用運算符& 聲明參數(shù)宾濒。實際上是一個指針。
在這種新的調(diào)用機制中,我們向函數(shù)傳遞的是地址可训,而函數(shù)則通過該地址訪問調(diào)用。但是使用引用參數(shù)調(diào)用函數(shù)的表示方法與直調(diào)用是相同的捶枢。換句話說握截,雖然使用引用參數(shù)進行函數(shù)的引用調(diào)用時向函數(shù)傳遞的參數(shù)是地址,但我們并不需要使用間接運算符號來實現(xiàn)對數(shù)據(jù)的訪問烂叔。
void AskForInfo(string &rName,int &rAge, int &rNumPets);
int main()
{
AskForInfo(name, age, numPets);
}
void AskForInfo(string &rName, int &rAge, int &rNumPets)
{}
二:
使用指針進行函數(shù)的引用調(diào)用:? 把某一變量的地址賦給函數(shù)中的一個指針變量
間接運算符 *?? 當和指針一起使用時谨胞, 該運算符會把程序指向指針變量所在存儲的地址處。
void??? AskForInfo(string *pName,int? * pAge);
int main ()
{
int ? pAge;
AskForInfo(&pName, ? ? & pAge)???? /? /注意與一中傳參數(shù)調(diào)用區(qū)別
}
void? ? AskForInfo(string *pName,int? * pAge)
對比:
(在同一個函數(shù)中可以即使用指針又使用引用蒜鸡,一下程序稍作修改可是實現(xiàn))