Attribute는 전처리 지시어로서 클래스, 구조체, 매소드 등에 영향을 미치는 범용적인 기능을 가지고 있습니다.
내장 Attribute와 사용자 정의 Attribute가 있는데 기본적인 Attribute로는 Conditionalm Obsolete, Dlllmport가 있습니다.
대표적인 Conditional Attribute만 알아보겠습니다.
#define SELF
using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
namespace Attrivute_conditional
{
class ConditionalTest
{
[Conditional("SELF")]
public static void definefunction()
{
Console.WriteLine("Define conditional attribute!!");
}
[Conditional("BYSELF")]
public static void undefined()
{
Console.WriteLine("Undefined Conditional!!");
}
}
class Program
{
static void Main(string[] args)
{
ConditionalTest.definefunction();
ConditionalTest.undefined();
}
}
} |
#define SELF : define으로 선언된 것만 Attribute로 등록하여 사용할 수 있습니다.
using System.Diagnostics; : Conditional Attribute를 사용하기 위해서는 추가해야 함
[Conditional("SELF")] : Attribute 등록함