C# 関数の使い方 入門 voidとは

今回は、関数の使い方についてまとめていきます。

関数とは

関数というと、数学っぽくて難しそうなイメージがありますけど、プログラミングの関数はそんなに難しいものではありません。

関数とは、処理のまとまりのことです。

プログラミングをしていると、1つのプログラムの中に何回か同じ処理を行う時があります。

その同じ処理っていうのを処理のまとまり「関数」として扱うことができます。

同じ処理なんだったら、コピペしたらいいじゃん!って思う人がいるかもしれませんが、関数にはいろいろとメリットがあるので、紹介していきます。

 

関数のメリット

関数のメリットは、経験上、プログラムが完成した後にでてきます!メリットとしては、3つありますね。

メリット
  • プログラムが見やすくなる。
  • 修正が楽になる。
  • テストが楽になる

1つ目、「プログラムが見やすくなる」というのは、複雑な関数であればあるほど、コピペだとプログラムのソース自体の行数が増えていきます。行数が増えれば増えるほど、他の人が見る時に見にくいソースになります。プログラムは、複数人での開発が多いですので、周りの人が見やすいソースを心掛けることはとても大切なことです。

2つ目、「修正が楽になる」というのは、例えば同じ処理をしているところが、5か所あるとします。コピペでプログラムを作成した後、修正をしようとした時に5か所直す必要があります。しかし、関数としてまとめておくと、修正箇所が1か所になるというメリットがあります。

3つ目、「テストが楽になる」というのは、プログラムを作成した後、テストを行うのですが、コピペだとすべての箇所でテストをする必要がありますが、関数にしておくと関数のテストだけしておけば問題ないので、テストが楽になりますね。

 

ここまで、メリットばかり挙げましたが、個人的にデメリットが1つあります。。。
修正するときに、影響範囲をしっかり確認しないといけない点ですね。ただ、デメリットよりメリットの方が多いと思うので、同じ処理があれば「関数」にしていきましょう。

 

関数の使い方

関数を書くには、まずはこの形を覚えてください。一番多い使い方かなと思います。

関数
返却する値の型 関数名(引数)
{
    処理を書く
}

値を返す関数の場合は、このように書くことができます。
値を返さないときは、voidと書きましょう。
引数を使うことで、呼び出し元の値を関数内で使用するできるようになります。

関数
void 関数名(引数)
{
    処理を書く
}

関数の使い方 例

言葉で言っていてもわかりにくいと思うので、プログラムの例を載せていき舞う。

値を2倍にする関数を作成してみましょう。

private void FrmFunction_Load(object sender, EventArgs e)
{
    //関数 返却値あり
    int value = kake2(2);
    Console.WriteLine(value);

    //関数 返却値なし
    kake2_msg(3);
}

//値を2倍にする関数 返却値あり
int kake2(int p_value)
{
    int result;
    result = p_value * 2;
    return result;
}

//値を2倍にする関数 返却値なし
void kake2_msg(int p_value)
{
    int result;
    result = p_value * 2;
    MessageBox.Show(result.ToString());
}

 

解説
1~9行目:関数の呼び出し元
4行目:kake2という関数を呼び出す。引数を2に指定。関数の結果をvalueという変数に格納。
8行目:kake2_msgという関数を呼び出す。
11~17行目:値を返却する関数 p_valueには2が格納されている
19~25行目:値を返さない関数 p_valueには3が格納されている

 

出力結果には、4
メッセージフォームに、6
が出力されることが確認できましたね。

まとめ

今回は、関数について紹介しました。

とくにvoidの意味をしっかりと理解しておきましょう。

値を返さない関数を作成するときは、voidを利用する。

 

C#の記事一覧

おすすめの記事