제네릭

    C#) Generic 일반화

    일반화 클래스 class MyList { T[] arr = new T[10]; public T GetItem(int i) { return arr[i]; } } MyList myIntList = new MyList(); int item = myIntList.GetItem(0); 형식 매개변수의 제약 class 클래스이름 where T : @@@ where T : struct // T는 값 형식이어야 한다. where T : class // T는 참조 형식이어야 한다. where T : new() // T는 어떤 인자도 받지 않는 기본 생성자여야 한다. where T : 기반클래스이름 // T는 기반 클래스의 파생 클래스여야 한다. where T : 인터페이스이름 // T는 인터페이스를 구현해야만 한다. 여..