オブジェクトをメソッドに渡す場合、ref キーワードを使用する必要があるのはなぜですか? とにかくこれはデフォルトの動作ではありませんか?
例えば:
class Program
{
static void Main(string[] args)
{
TestRef t = new TestRef();
t.Something = "Foo";
DoSomething(t);
Console.WriteLine(t.Something);
}
static public void DoSomething(TestRef t)
{
t.Something = "Bar";
}
}
public class TestRef
{
public string Something { get; set; }
}
出力は、オブジェクトが参照として渡されたことを意味する "Bar" です。