0
函數的參數int&
如何處理int**
類型的變量?如何爲一個帶參數int&的函數處理一個int **類型的變量?
例如,我有常規的交換功能,它在我從一個指針數組傳遞變量時起作用。它如何不會導致類型不匹配錯誤?因爲互換應該只收到int
而不是int**
。
void swap(int& a, int& b);
const int SIZE = 6;
int main(){
int arr[SIZE] = { 1, 2, 3, 4, 5, 6 };
int*pointers[SIZE];
int i;
for (i = 0; i<SIZE; i++)
pointers[i] = &arr[i];
for (i = 0; i < SIZE; i++)
swap(pointers[i], pointers[i + 1]);
}
void swap(int& a, int& b){
int t;
t = a;
a = b;
b = t;
}
請發佈一個MCVE。 – juanchopanza
請告訴我們調用'swap()'的代碼。 – Kevin
無論如何,你知道'std :: swap'嗎?另外,作爲參考的校正標籤顯然不* C。 – Deduplicator