제네릭 3

[C#] 제네릭의 형식 제약

[C#] 제네릭의 형식 제약제네릭 클래스나 메소드에서 T는 모든 데이터형식을 대신 할 수 있다.그런데 종족 특정 조건에 해당하는 데이터형식만 받고 싶을 때가 있다.이럴때는 형식에 제약 조건을 줄 수 있다.where 형식 변수 : 제약조건제약조건 classclass ArrayGeneric where T : class { private T[] arr; public T GetElement(int index) {return arr[index];} }T는 참조 형식이어야 한다.위의 예제에서 T에 int나 float과 같은 값 형식은 들어올 수 없다.따라서, ArrayGeneric arr = new ArrayGeneric()와 같은 코드는 컴파일에러가 발생한다.제약조건 structclass ArrayGeneric ..

아카이빙/C# 2018.06.21

[C#] 제네릭 클래스

[C#] 제네릭 클래스제네릭 클래스는 어떠한 형식을 일반화한 클래스이다.제네릭 메소드를 이해했다면 쉽게 이해가능class ArrayInt { private int[] arr; public int GetElement(int index) {return arr[index];} } ​ class ArrayFloat { private float[] arr; public float GetElement(int index) {return arr[index];} }위의 두 클래스의 필드와 메소드는 데이터 형식만 다르고 내용은 완전히 같다.제네릭 클래스 예시class ArrayGeneric { private T[] arr; public T GetElement(int index) {return arr[index];} }제네..

아카이빙/C# 2018.06.21