c++++ 函數參數傳遞有值傳遞和引用傳遞兩種方式:值傳遞:創建局部變量副本,對副本的修改不影響原始變量。引用傳遞:直接傳遞對原始變量的引用,對引用變量的修改反映在原始變量中。
C++ 函數參數傳遞值和傳遞引用的區別
傳遞值
當函數參數通過值傳遞時,將為該局部變量創建一個副本。對該副本的更改不會影響原始變量。
語法:
void function(int value);
登錄后復制
傳遞引用
當函數參數通過引用傳遞時,直接傳遞對原始變量的引用,而不是創建副本。對引用變量的更改將反映在原始變量中。
語法:
void function(int& value);
登錄后復制
實戰案例
考慮以下函數:
void swap(int& a, int& b) { int temp = a; a = b; b = temp; }
登錄后復制
該函數通過引用傳遞兩個整數,因此當函數交換 a
和 b
的值時,它也會修改主函數中的原始變量。
使用示例:
int main() { int x = 5, y = 10; swap(x, y); // 交換 x 和 y 的值 cout << x << ", " << y << endl; // 輸出交換后的值 return 0; }
登錄后復制
輸出:
10, 5
登錄后復制