C では、パラメーターを渡すには 4 つの方法があります。 1. 値で渡す (コピー) 2. 参照で渡す 3. 定数参照で渡す 4. ポインターで渡す。値渡しと参照渡しは元の値を変更するために使用され、定数参照は読み取り専用アクセスに使用され、ポインタ渡しはメモリ アドレスを操作するために使用されます。
#C 関数パラメータの受け渡しメソッド
C では、データを関数に渡す方法がたくさんあります。値のコピーが渡されるか、値への参照が渡されるかに応じて、パラメータの受け渡しメソッドは次のタイプに分類されます:1. 値による渡し
値のコピーを渡します。コピーを変更しても元の値には影響しません。宣言方法:void f(int a); // 传递 a 的副本
2. 参照渡し
値の参照を渡し、参照への変更は元の値に影響します。宣言方法:void f(int& a); // 传递 a 的引用
3. 定数参照による受け渡し
は参照による受け渡しと似ていますが、参照が指す値は変更できません。宣言方法:void f(const int& a); // 传递 a 的常引用
4. ポインタ渡し
ポインタを値に渡し、ポインタが指す値を変更すると元の値に影響を与えます。宣言方法:void f(int* a); // 传递 a 的指针
実際のケース:
次に、値渡しと参照渡しを使用した C 関数の例を示します。#include <iostream> // 传值 void swapValue(int a, int b) { int temp = a; a = b; b = temp; } // 传引用 void swapReference(int& a, int& b) { int temp = a; a = b; b = temp; } int main() { int x = 1, y = 2; std::cout << "Before swapValue: x = " << x << ", y = " << y << std::endl; swapValue(x, y); std::cout << "After swapValue: x = " << x << ", y = " << y << std::endl; std::cout << "Before swapReference: x = " << x << ", y = " << y << std::endl; swapReference(x, y); std::cout << "After swapReference: x = " << x << ", y = " << y << std::endl; return 0; }
出力結果:
Before swapValue: x = 1, y = 2 After swapValue: x = 1, y = 2 Before swapReference: x = 1, y = 2 After swapReference: x = 2, y = 1注:
値渡しは、値のコピーを作成する必要がある場合に適用できます。
以上がC++で関数パラメータを渡す方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。