Ответ 1
Для ref
Ключевое слово Уже упоминалось в MSDN, что:
Не путайте понятие передачи по ссылке с понятием ссылочных типов. Эти две концепции не совпадают. Параметр метода может быть изменен с помощью ref независимо от того, является ли он типом значения или ссылочным типом. не бокс типа значения, когда он передается по ссылке.
Что касается ключевого слова out
:
Ключевое слово out приводит к передаче аргументов по ссылке. Это как ключевое слово ref, за исключением того, что ref требует, чтобы переменная была инициализирована до ее передачи.