引数と戻り値
メソッドは、呼び出し元から値を受け取って処理し、必要なら結果を返します。受け取る値を引数、返す値を戻り値と呼びます。
using System;
class Program
{
static int Add(int left, int right)
{
return left + right;
}
static void Main()
{
int result = Add(12, 8);
Console.WriteLine(result);
}
}
Addのint leftとint rightが引数、戻り値の型intが返す値の型です。returnで呼び出し元へ処理結果を返します。
voidとの違い
戻り値が不要なメソッドではvoidを指定します。Console.WriteLineのように表示だけを行う処理が代表例です。
static void ShowMessage(string message)
{
Console.WriteLine(message);
}
値渡しの基本
C#の通常の引数渡しは値渡しです。値型では値そのものがコピーされ、参照型では参照の値がコピーされます。参照先のオブジェクトを変更できる場合がある点は、後のクラス学習で確認します。
設計のポイント
- メソッドが必要とする値だけを引数にする。
- 処理結果は戻り値として返し、呼び出し元で利用できるようにする。
- 表示・入力などの副作用と、計算処理を分けるとテストしやすくなる。