-2
請找我的代碼 - 摘錄如下指針一種誤解:我有在C++
void inpu(vector<vector<int>> &pairs,int I){
//Do something
}
int main() {
int I = 10;
vector<vector<int> > pairs(N);
inpu(pairs,I);
}
現在,據我所知,功能inpu()
需要一個載體類型和一個整數的地址。我的疑問是,當撥打inpu()
時,爲什麼我們不通過向量pairs
的地址,因爲inpu(&pairs,I);
在int main()
,而是作爲inpu(pairs,I);
?
'&pairs' **不代表函數需要一個向量的地址(可以寫成'* pairs')。這是一個[通過引用傳遞](https://www.tutorialspoint.com/cplusplus/cpp_function_call_by_reference.htm)參數,因此如圖所示調用它。 – lurker
&對是一個指針。這可以爲null。 'inpu(...&pair,...)'請求參考。發送空值不是微不足道的。請參閱https://stackoverflow.com/questions/114180/pointer-vs-reference – wigy
'&'在類型中使用時和在作爲運算符應用於表達式時意味着完全不同的東西。 – molbdnilo