• 티스토리 홈
  • 프로필사진
    유니얼
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
유니얼
  • 프로필사진
    유니얼
    • 분류 전체보기 (295)
      • Unity (17)
        • 게임 개발 (5)
      • Unreal (24)
        • 게임 개발 (20)
      • DirectX (36)
      • 코딩테스트 (91)
        • 프로그래머스 (25)
        • 백준 (66)
      • Google Workspace (1)
      • Programing (102)
        • C# (68)
        • C++ (24)
        • JavaScript (10)
      • 게임 서버 프로그래밍 (17)
      • Web (6)
        • 슈퍼코딩 (6)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
    등록된 댓글이 없습니다.
  • 최근 공지
    등록된 공지가 없습니다.
# Home
# 공지사항
#
# 태그
# 검색결과
# 방명록
  • C# 프로그래밍의 기초: 선택적 매개변수와 명명된 매개변수
    2024년 08월 24일
    • 유니얼
    • 작성자
    • 2024.08.24.:15
    728x90

    C#에서 메서드를 설계하고 호출하는 과정은 매우 중요합니다. 특히, 선택적 매개변수와 명명된 매개변수를 활용하면 메서드 호출의 유연성을 대폭 높일 수 있습니다. 이 블로그 포스트에서는 선택적 매개변수와 명명된 매개변수의 개념을 소개하고, 각각의 사용법과 장점에 대해 설명하겠습니다.

    선택적 매개변수 (Optional Parameters)

    1. 선택적 매개변수란?

    선택적 매개변수는 메서드 호출 시 꼭 필요하지 않은 경우, 기본값을 가지고 정의된 매개변수입니다. 호출자는 이 매개변수를 생략할 수 있으며, 생략된 경우 메서드 정의에 지정된 기본값이 사용됩니다. 선택적 매개변수는 주로 메서드 매개변수 목록의 끝부분에 위치해야 합니다.

    예제 코드:

    public void PrintMessage(string message = "Default Message")
    {
        Console.WriteLine(message);
    }
    

    위 메서드에서 message 매개변수는 기본값 "Default Message"를 가지므로, 메서드를 호출할 때 message 매개변수를 생략할 수 있습니다.

    사용법:

    PrintMessage();  // 출력: Default Message
    PrintMessage("Hello, World!");  // 출력: Hello, World!
    

    명명된 매개변수 (Named Parameters)

    2. 명명된 매개변수란?

    명명된 매개변수는 호출 시 매개변수의 순서에 구애받지 않고, 매개변수의 이름을 명시적으로 지정하여 값을 전달할 수 있습니다. 이 기능은 특히 메서드가 많은 매개변수를 가지고 있을 때, 특정 매개변수만을 명확하게 지정하고 싶을 때 유용합니다.

    예제 코드:

    public void PrintUserInfo(string name, int age = 0, string country = "Unknown")
    {
        Console.WriteLine($"Name: {name}, Age: {age}, Country: {country}");
    }
    

    사용법:

    PrintUserInfo(name: "Alice", country: "USA", age: 30);  // 출력: Name: Alice, Age: 30, Country: USA
    PrintUserInfo(country: "Germany", name: "Bob");  // 출력: Name: Bob, Age: 0, Country: Germany
    

    전체예제 코드

    using System;
    using System.Text;
    using System.ComponentModel;
    using System.Reflection.Metadata.Ecma335;
    using System.Text.RegularExpressions;
    namespace ProgramClass
    {
        class Program
        {
            public static void PrintMessage(string message = "Default Message")
            {
                Console.WriteLine(message);
            }
    
            public static void PrintUserInfo(string name, int age = 0, string country = "Unknown")
            {
                Console.WriteLine($"Name: {name}, Age: {age}, Country: {country}");
            }
    
            static void Main(string[] args)
            {
                // 선택적 매개변수를 사용하여 메서드 호출
                PrintMessage();
                PrintMessage("Custom Message");
    
                // 명명된 매개변수를 사용하여 메서드 호출
                PrintUserInfo(name: "Alice", age: 25, country: "USA");
                PrintUserInfo(name: "Bob", country: "UK");
                PrintUserInfo("Charlie");  // 명명된 매개변수 없이 호출
            }
        }
    }

    결론

    선택적 매개변수와 명명된 매개변수는 C#에서 메서드를 더 효과적으로 사용할 수 있게 하는 기능입니다. 이들을 적절히 활용하면 코드의 가독성을 높이고, 오버로딩의 필요성을 줄이며, 코드의 유지 보수를 용이하게 할 수 있습니다.

    반응형
    다음글
    다음 글이 없습니다.
    이전글
    이전 글이 없습니다.
    댓글
조회된 결과가 없습니다.
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
목차
표시할 목차가 없습니다.
    • 안녕하세요
    • 감사해요
    • 잘있어요

    티스토리툴바