프로그래밍/C#

[C#] C# 10.0 CallerArgumentExpression특성

Victory_HA 2025. 1. 2. 16:38

샘플 코드

static void Main(string[] args)
{
    int a = 1;
    Assert(a > 0);    
}

static void Assert(bool argument1, [CallerArgumentExpression("argument1")] string? paramName = null)
{
    if (argument == false)
    {
        Console.WriteLine($"argument = {argument1}, paramName = {paramName} ");
    }
}
  • CallerArgumentExpression 특성이 붙은 인자는 기본값이 있어야 하고 그 특성에 전달된 argument1은 해당 메서드에 전달된 또 다른 매개 변수의 이름이어야 합니다.

출력 결과

argument = False, paramName = a > 6