관리 메뉴

제목없음

C# 제네릭 자료형 한정하기 본문

프로그램 작성/컴퓨터 언어

C# 제네릭 자료형 한정하기

다람군 2013.05.05 02:25

C#에서 제네릭(Generic, Metaprogramming)을 사용할 때, 제네릭으로 사용할 자료형을 한정하고 싶을 경우가 많진 않지만 적지도 않습니다. 이럴 경우 간단한 방법으로 한정할 수 있습니다.

 

먼저, 클래스로 한정할 지, 구조체로 한정할 지, 열거형으로 한정할 지 정하고 싶은 경우 다음과 같이 쓸 수 있습니다.

class MyGenericClass1<T> where T : class
{

}

class MyGenericClass2<T> where T : struct
{

}

 

그리고 상속 받는 특정 클래스로 한정하고 싶을 경우 다음과 같이 쓸 수 있습니다. 위와 같은 방법이지요.

class MyGenericClass<T> where T : IDisposable
{

}

 

이 방법들은 클래스나 구조체의 구현뿐 아니라 메서드의 구현에서도 사용할 수 있습니다.

0 Comments
댓글쓰기 폼