ホームページ  >  記事  >  バックエンド開発  >  C# 参照による呼び出し

C# 参照による呼び出し

WBOY
WBOYオリジナル
2024-09-03 15:26:321106ブラウズ

参照パラメータは、変数のメモリ位置を参照するために使用されます。パラメータの新しい格納場所を必要とする値パラメータとは異なり、参照パラメータは、メソッドに引数として渡される元のパラメータと同じメモリ場所を表します。 C# では、キーワード「ref」を使用して参照パラメータを宣言します。 C# で参照引数をパラメーターとして関数に渡すとき、元の値の代わりにメモリの場所への参照を渡します。 C# では、この概念を「参照による呼び出し」と呼びます。

構文

ref data_typevariable_name

data_type は、variable_name の変数のデータ型です。

C# 参照による呼び出しの仕組み

  • 引数を受け取る関数を呼び出す必要があり、メモリ内の変数の参照アドレスを引数として関数に渡したい場合は、C# では参照による呼び出しを使用します。
  • 参照パラメータは、メモリ内の変数のアドレスを受け取るパラメータです。

言及されている例を以下に示します:

例 #1

参照による呼び出しをデモする C# プログラム。参照による関数の呼び出し前と関数の呼び出し後に、数値の 2 乗を計算して値を表示します。

コード:

using System;
//a namespace called program1 is defined
namespace program1
{
//a class called check is defined
class check
{
//a function is defined which takes reference variable as an argument
public void displaypower(ref double value)
{
//the square of the passed value is found using pow method
double power = Math.Pow(value,2);
//The resulting value is added to the value passed as reference
value = value + power;
Console.WriteLine("Value when the control is inside the function "+value);
}
//main method is called
static void Main(string[] args)
{
//a double variable is defined
double value = 5;
//an instance of the check class is defined which consists of the function taking reference parameter as an argument
check check1 = new check();
Console.WriteLine("Value before the function is called "+value);
//a function is called by reference
check1.displaypower(ref value);
Console.WriteLine("The value of the variable remains the same as inside the function because we are calling the function by reference " + value);
}
}
}

出力:

C# 参照による呼び出し

説明:

  • 指定されたプログラムで、名前空間「program1」を定義します。この名前空間内には、関数を含む「check」という名前のクラスがあります。この関数は参照変数を引数として受け取ります。
  • この関数は、参照として渡された値を取得し、その値の 2 乗を計算して実際の値に加算し、結果の値を表示します。

例 #2

関数を参照により呼び出し、小文字の文字列を参照パラメータとして渡すことで、指定された小文字の文字列を大文字に変換する参照による呼び出しを示す C# プログラム。

コード:

using System;
//a namespace called program1 is defined
namespace program1
{
//a class called check is defined
class check
{
//a function is defined which takes reference variable as an argument
public void displayupper(ref string value)
{
//ToUpper method is used to convert the string from small letters to capital letters
value = value.ToUpper();
Console.WriteLine("Value when the control is inside the function "+value);
}
//main method is called
static void Main(string[] args)
{
//a double variable is defined
string value = "shobha";
//an instance of the check class is defined which consists of the function taking reference parameter as an argument
check check1 = new check();
Console.WriteLine("Value before the function is called "+value);
//a function is called by reference
check1.displayupper(ref value);
Console.WriteLine("The value of the variable remains the same as inside the function because we are calling the function by reference " + value);
}
}
}

出力:

C# 参照による呼び出し

説明:

  • 上記のプログラムでは、「program1」という名前空間を定義しています。次に、この名前空間内に「check」というクラスを定義します。 「check」クラス内で、参照変数を引数として取る関数を定義します。
  • この関数は、参照として渡された値を受け取り、ToUpper() メソッドを使用して小文字の指定された文字列を大文字に変換します。

おすすめ記事

これは C# 参照による呼び出しのガイドです。ここでは、動作例とプログラミング例を使用して導入について説明します。詳細については、次の記事もご覧ください –

  1. C# 辞書
  2. データリーダー C#
  3. IEnumerable C#
  4. C# System.IO

以上がC# 参照による呼び出しの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:C# リファレンス次の記事:C# リファレンス