引数の記法

■引数の規定値

 メソッド定義時に、引数に"=値"とすることで規定値をセットできる。

 ex) public string GetName(string name ="山田"){}

■名前付き引数

 メソッド呼び出し時、引数名:値とすることで、引数の順番を変更したり

 省略したり、またどの引数に値を渡しているか明示することができる。

 ex) GetName(name:"川田”)

 ただし、定義側の引数名が変わると呼び出し側も変える必要がある。

■可変長引数

 引数の数が事前に特定できない場合、可変長引数を使用することで

 渡される値の個数に関わらず処理がおこなえる。

 可変長引数は、メソッド定義側の引数に、paramsキーワードを付与

 することで可能。また、受け取った引数は配列に格納される。

 ex) public string GetNames(params string[] values)

■ref引数

 メソッド定義側の引数にrefをつけることで、当該引数を常に参照

 渡しにできる。ただし、呼び出し側にもrefが必要。

 ex)

  public string GetNames(ref string values)

  var p = GetNames(ref data)

■out引数

 out引数は、ref同様にoutをつけた引数は必ず参照渡しとなる。

 ただし、呼び出し側でoutの値が更新されない場合、コンパイルエラーとなる。

 参照渡しを利用してメソッドから複数の戻り値を取得場合に、取得漏れを

 なくす為に良い。