Какая польза от «ref» для переменных ссылочного типа в C #?

Я понимаю, что если я передаю значение типа (int, structи т. д.) в качестве параметра (безref ключевое слово), копия этой переменной передается методу, но если я используюref ключевое слово передается ссылка на эту переменную, а не на новую.

Но с ссылочными типами, такими как классы, даже безref Ключевое слово, передается метод, а не копия. Так какая польза отref ключевое слово с ссылочными типами?

Взять, к примеру:

var x = new Foo();

В чем разница между следующим?

void Bar(Foo y) {
    y.Name = "2";
}

а также

void Bar(ref Foo y) {
    y.Name = "2";
}

Ответы на вопрос(10)

Ваш ответ на вопрос