我有一個關於傳遞數組引用運算符的問題。我想編寫使用參考運算符傳遞數組的代碼。然後我試了C++傳遞數組使用引用運算符
void swap(int &testarray[3]){
// code
}
它給我錯誤。它說,
/main.cpp:5: error: declaration of 'testarray' as array of references
然而,當改變了我的代碼
void swap(int (&testarray)[3]){
// code
}
它運行正常。只有區別是有支架。
爲什麼它需要托架和是什麼INT(& testarray)之間的差[3]和int & testarray [3]
感謝您的幫助。
爲什麼你想要通過引用傳遞數組? – Cornstalks
@Cornstalks你爲什麼不想通過引用傳遞數組? @burakim:既然你已經標記了這個C++ 11,你可以切換到'std :: array'並且避免這種C語言的奇怪語法。 –
Praetorian
@Praetorian:因爲數組不能被賦值,並且已經衰減到指針。 – Cornstalks