Передача ссылочного типа по значению - C# (201498)
Формулировка задачи:
Объясните
если s2 это копия s, то почему функция выполняется не до конца то есть не обнуляется?
static void Main(string[] args)
{
var s2 = new StringBuilder();
Foo(s2);
Console.WriteLine(s2);
}
private static void Foo(StringBuilder s)
{
s.Append("test");
}Решение задачи: «Передача ссылочного типа по значению»
textual
Листинг программы
class Program
{
static void Main(string[] args)
{
var s2 = new StringBuilder();
Foo(ref s2);
Console.WriteLine(s2);
}
private static void Foo(ref StringBuilder s)
{
s.Append("test");
s = null;
}
}