2014-10-05 C#でrefとoutの違い C# C#でメソッドの引数に付加するrefとoutの違いについて。 どちらも引数の参照渡しを実現するもの。 しかし挙動には若干の違いがある。 簡単にまとめると以下のようになる。 refで渡す引数は初期化されている必要がある。 メソッド内部で初期化する必要はない。 outは渡す引数は初期化されている必要はない。 メソッド内部で初期化する必要がある。 サンプルコードは以下がわかりやすい。 C#におけるref修飾子とout修飾子の違い - つばろぐ