C# - 일반화 탬플릿

양규빈·2023년 7월 14일
0

C# 공부

목록 보기
15/30

개요

코드를 일반화하여 여러 다른 타입에서 재사용할 수 있는 기능. 일반화 템플릿을 사용하면 클래스, 구조체, 메서드 등을 작성할 때 특정한 타입에 종속되지 않고 범용적으로 사용할 수 있다.

C#에서의 일반화 템플릿은 <> 꺾쇠 괄호를 사용하여 정의된다.

이 꺾쇠 괄호 안에 타입 매개변수를 선언하고, 이 매개변수를 템플릿 내에서 타입 또는 메서드의 인수로 사용할 수 있다.
일반화 템플릿은 타입의 안전성을 유지하면서 코드의 재사용성을 높이는데 도움을 준다.

코드 및 세부 설명

<T>로 자료형을 받아서, 해당 자료형의 값을 배열의 형태로 저장하는 제네릭 클래스를 구현한 코드.

다음과 같이 사용한다.
<T>에 float double 등 자유롭게 자료형을 입력하여 사용할 수 있다.



<T> 타입 파라미터를 두 개 이상 받아서 사용할 수도 있다.

상단의 코드는 타입 파라미터 2개를 사용한 제너릭 탬플릿이다.

제너릭
<T>타입 파라미터를 이용해서 박싱, 언박싱 최소화 가능 -> 성능 향상
②사용시에는 이 타입 파라미터에 특정 타입을 지정
③여러 개의 데이터 타입에 대응하는 범용성을 가진다.



<T>타입 파라미터가 <T>타입 파라미터 클래스를 타입 파라미터 형으로 받을 수 있다.

상단의 코드를 확인하면, string을 인자로 받는, 부모 객체, Base 클래스를 파라미터로 받는 MyGeneric 클래스를 확인할 수 있다.
해당 제너릭 탬플릿의 인스턴스를 생성하기 위해서는 부모객체인 Base나 AA 클래스를 인스턴스로 초기화 해야 한다.

또한 이렇게 생성한 데이터는 다음과 같이 if문으로 사용 가능하다.

profile
훌륭한 개발자를 꿈꾸는 중입니다

0개의 댓글

관련 채용 정보