C#で学ぶ out 修飾子の基本
この資料では、C#のout
修飾子を使ってメソッドから値を返す方法を、シンプルな例で解説します。
目次
1. 目的
out
修飾子を利用すると、メソッド内で計算した値を呼び出し元に返すことができます。ここでは、渡された整数の2倍の値を計算して返すメソッドを例に、基本的な使い方を学びます。
2. サンプルコード
以下は、整数の2倍の値を返すサンプルコードです。
※ この例では、out
修飾子を使って、メソッド内で計算した値を呼び出し元の変数に代入しています。
using System;
class Program
{
static void Main()
{
// 計算結果を格納するための変数(初期化不要)
int doubledValue;
// 10の2倍の値を計算し、doubledValueに格納する
DoubleValue(10, out doubledValue);
Console.WriteLine("10の2倍の値は: " + doubledValue);
}
// 引数valueの2倍の値を計算して、outパラメータdoubledに結果を代入するメソッド
static void DoubleValue(int value, out int doubled)
{
doubled = value * 2;
}
}
C# 7.0以降では、out
パラメータの変数を呼び出し時に直接宣言できます。以下のようにリファクタリングすることができます。
using System;
class Program
{
static void Main()
{
// 10の2倍の値を計算し、doubledValueに格納する
DoubleValue(10, out int doubledValue);
Console.WriteLine("10の2倍の値は: " + doubledValue);
}
// 引数valueの2倍の値を計算して、outパラメータdoubledに結果を代入するメソッド
static void DoubleValue(int value, out int doubled)
{
doubled = value * 2;
}
}
このように書くと、変数の宣言と初期化が1行で済むため、コードがよりシンプルになります。
3. コードの解説
「out」は、メソッドから出力する(output)パラメータであることを示すためのキーワードです。
つまり、「out」は「出力」という意味合いで使われており、和訳で「外」という意味ではなく、メソッド内部で設定された値が呼び出し元に「返される」ことを表現しています。
3.1. out
修飾子の概要
- 役割
out
修飾子を使うと、メソッド内で計算または処理した値を呼び出し元に返すことができます。 - 特徴
呼び出し前に変数を初期化する必要はなく、メソッド内で必ず値を代入しなければなりません。
3.2. DoubleValue
メソッドの説明
- 機能
渡された整数value
の2倍の値を計算し、その結果をout
パラメータdoubled
に代入します。 - パラメータ
value
: 元の整数。out int doubled
: 計算結果(2倍の値)を返すためのパラメータ。
- 動作
メソッド内でdoubled = value * 2;
と記述することで、計算結果が必ず代入されます。
3.3. Main
メソッドの動作
- 処理の流れ
- 変数
doubledValue
を宣言します(初期化は不要)。 DoubleValue
メソッドを呼び出し、引数10
の2倍の値をdoubledValue
に代入します。- 計算結果をコンソールに出力します。
- 変数
4. まとめ
この資料では、C#のout
修飾子を用いた基本的な使い方をシンプルな例で学びました。
out
修飾子を使うことで、メソッド内で計算した値を直接呼び出し元に返すことができます。- この例では、整数の2倍の値を計算し、
out
パラメータに結果を代入する方法を紹介しました。
この基本的なパターンを理解することで、より複雑なシナリオでもout
修飾子を活用できるようになります。
ディスカッション
コメント一覧
まだ、コメントがありません