반응형
C# 제네릭 (C# Generics)
클래스 또는 메서드(함수)를 선언하고 인스턴스화 할때까지 하나이상의 형식을 따르는 클래스나 메서드(함수)를 디자인할 수 있도록 형식 매개 변수 개념을 도입할 수 있습니다.
보통 사칙연산등에서 변수타입에서 관련 없이 함수의 매개변수에 값을 넣어 다용도로 사용할 수 있게 만들기 위해 사용합니다.
C++에 템플릿하고 비슷한 역할을 수행합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class AAAA<T>
{
public void print(T value)
{
Console.WriteLine(value);
}
}
class Program
{
static void Main(string[] args)
{
AAAA<int> aaaaInt = new AAAA<int>();
aaaaInt.print(1);
AAAA<string> aaaaString = new AAAA<string>();
aaaaString.print("AAAAA");
}
}
}
|
위 예제는 클래스 함수에 템플릿을 사용한 예를 보여줍니다.
int형과 string형에 관련없이 해당 값을 출력할 수 있도록 구현되었습니다.
반응형
'개발공부 > C#' 카테고리의 다른 글
[C#] 람다식(Lambda expressions) (0) | 2019.10.21 |
---|---|
[C#] 무명 메서드(anonymous method) (0) | 2019.10.20 |
[C#] 인덱서(Indexer) (0) | 2019.10.18 |
[C#] 이벤트(event) & 델리게이트(delegate) (0) | 2019.10.17 |
[C#] delegate (0) | 2019.10.16 |