-
C# 프로그래밍의 기초: 선택적 매개변수와 명명된 매개변수2024년 08월 24일
- 유니얼
-
작성자
-
2024.08.24.:15
728x90C#에서 메서드를 설계하고 호출하는 과정은 매우 중요합니다. 특히, 선택적 매개변수와 명명된 매개변수를 활용하면 메서드 호출의 유연성을 대폭 높일 수 있습니다. 이 블로그 포스트에서는 선택적 매개변수와 명명된 매개변수의 개념을 소개하고, 각각의 사용법과 장점에 대해 설명하겠습니다.
선택적 매개변수 (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일 동안 최신 버전이
감지되어도 모달 창이 표시되지 않습니다.)