C#/C# 일반

[C#] 제네릭의 비교 형식 제한

진서박 2023. 7. 17. 18:03
반응형

제네릭으로 클래스를 선언했을 때, 비교연산자를 사용할 수 없다는 문제가 있다.

IComparable<T>인터페이스를 클래스 선언부에 사용해주면 비교 가능한 자료형만 받아올 수 있다.

 

class Example<T> where T : IComparable<T>
{
	// 클래스 구현
}
class UseExample : IComparable<UseExample>
{
	public int ID;
	public int CompareTo(UseExample other)
	{
		if(ID == other.ID)
		return 0;
		return ID > other.ID ? 1 : -1;
	}
}
반응형

'C# > C# 일반' 카테고리의 다른 글

[C#] A* 알고리즘  (0) 2023.07.18