C#メソッドで参照によってパラメーターを渡すにはどうすればよいですか?
参照パラメータは、変数のメモリ位置への参照です。値パラメーターとは異なり、参照によってパラメーターを渡す場合、これらのパラメーターの新しい保管場所は作成されません。
参照パラメータは、メソッドに提供される実際のパラメータと同じメモリ位置を表します。
以下は、参照によってパラメーターを渡す方法を示す例です。 refキーワードを使用して参照パラメータを宣言します。
例
using System;
namespace CalculatorApplication {
class NumberManipulator {
public void swap(ref int x, ref int y) {
int temp;
temp = x; /* save the value of x */
x = y; /* put y into x */
y = temp; /* put temp into y */
}
static void Main(string[] args) {
NumberManipulator n = new NumberManipulator();
/* local variable definition */
int a = 100;
int b = 200;
Console.WriteLine("Before swap, value of a : {0}", a);
Console.WriteLine("Before swap, value of b : {0}", b);
/* calling a function to swap the values */
n.swap(ref a, ref b);
Console.WriteLine("After swap, value of a : {0}", a);
Console.WriteLine("After swap, value of b : {0}", b);
Console.ReadLine();
}
}
} 出力
Before swap, value of a : 100 Before swap, value of b : 200 After swap, value of a : 200 After swap, value of b : 100
-
Python関数で参照によって引数を渡す方法は?
与えられたコードについて、次の出力 b = ['10', '20'] a = ['10', '20'] 説明: これは、関数がメインスクリプトでその値を変更するため、変数「a」が参照によって渡されたことを示しています。
-
Python関数で参照によって引数を渡す方法は?
Pythonでは、関数の引数は常に参照によって渡されます。これは、事実に基づく正式な引数と返されたオブジェクトのid()を確認することで確認できます def foo(x): print ("id of received argument",id(x)) x.append("20") return x a = ["10"] print ("id of argument before calling function",id(a)) b = foo(a) print (&quo