C# Generic
2021. 1. 27. 11:12ㆍ개발 관련 학습정리/C#
반응형
Generic
c#에서는 Generic이라는 타입을 사용할 수 있는데, Generic 타입은 int/double과 같은 데이터 타입을
정하지 않고 타입 자체를 파라미터로 받아들이도록 정의할 수 있다.
또한 변수 뿐만아니라 메서드, 클래스, 인터페이스 등에서도 사용할 수 있다.
class GenericStack<T>
{
T[] _objlist;
int position = 0;
public GenericStack(int size)
{
_objlist = new T[size];
}
public void Push(T newvalue)
{
_objlist[position++] = newvalue;
}
public T Pop()
{
return _objlist[position--];
}
}
해당 클래스는 stack 자료구조를 Generic을 이용하여 구현한 예제이다.
T 타입 파라미터를 이용하여 stack안에는 여러 파라미터 타입이 들어갈 수 있다.
자료를 담는 _objlist를 T 타입으로 선언하고, 생성자에서 size만큼 배열을 선언한다.
GenericStack<int> intstack = new GenericStack<int>(5);
GenericStack<string> strstack = new GenericStack<string>(10);
이와 같이 <>안에 자료형을 담아 선언할 수 있다.
<>안에는 꼭 자료형 뿐만 아니라 또다른 클래스도 담을 수 있다.
반응형
'개발 관련 학습정리 > C#' 카테고리의 다른 글
디자인 패턴 - 싱글톤 (Singleton) (0) | 2021.04.01 |
---|---|
C# 람다 식 Lambda (0) | 2021.01.27 |
C# 추상클래스와 인터페이스 (0) | 2021.01.26 |
C# Delegate (0) | 2021.01.25 |
c# property (0) | 2021.01.12 |