public static void Main()
var mainBuilder = new StringBuilder();
PassByReference1(mainBuilder);
Console.WriteLine("after PassByReference1: mainBuilder = {0}", mainBuilder);
PassByReference2(ref mainBuilder);
Console.WriteLine("after PassByReference2: mainBuilder = {0}", mainBuilder);
static void PassByReference1(StringBuilder builder)
builder.Append("modified1");
builder = new StringBuilder("new1");
static void PassByReference2(ref StringBuilder builder)
builder.Append("modified2");
builder = new StringBuilder("new2");