본문 바로가기

C# 문법

[C#] 명명된 매개변수, 선택적 매개변수

명명된 매개변수, 선택적 매개변수

  • C# 4.0에 추가된 명명된 매개변수, 선택적 매개변수
  • 4.0 이전에는 매개변수 따라 결과를 다르게 하려면 아래와 같이 함수 오버로딩을 해야 했습니다.

4.0 이전

    void ShowMessage(string name);
    void ShowMessage(string name, int age);
    void ShowMessage(string name, int age, string country);

명명된 / 선택적 매개 변수 활용

    void ShowMessage(string name, int? age = null, string country= null)
    {
        Console.WriteLine($"{name} {age} {country}");
    }

    ShowMessage("Yangbeng");
    ShowMessage("Yangbeng", 33);
    ShowMessage("Yangbeng", 33, "Korea");
    //이렇게 선택해서도 사용할 수 있습니다.
    ShowMessage("Yangbeng", country : "Korea");
    ShowMessage("Yangbeng", country: "Korea", age: 33);

결과

Yangbeng
Yangbeng 33
Yangbeng 33 Korea
Yangbeng  Korea
Yangbeng 33 Korea