Если у функции C# есть выходной параметр, это можно сделать следующим образом:
private void f(out OutputParameterClass outputParameter);
Это означает, что параметр не нужно инициализировать при вызове функции. Однако при вызове этой функции вы должны повторить ключевое слово out:
f(out outputParameter);
Мне интересно, для чего это хорошо. Почему необходимо повторять часть спецификации функции? Кто-нибудь знает?