C#에는 out 키워드가 있다.
int a = 3;
int b = 5;
void test(out int a, int b)
{
a = 1;
b = 2;
}
test(out a, b);
Console.WriteLine($"{a} and {b}");
out은, 일반 함수의 매개변수와는 달리 해당 변수를 참조하도록 해주는 역할을 한다.
위 예제의 값은 어떻게 나올까? a는 out 키워드로 변수 참조가 변했기에 1이 되고, b는 참조되어 들어간 것이 아니라 5가 그대로 출력된다.