IComparable 썸네일형 리스트형 C# Operator Overloading으로 사용자 정의 연산 구현 연산자 오버로딩은 값 의미를 가진 타입에 자연어처럼 읽히는 연산을 부여해 가독성과 도메인 표현력을 높이는 기능입니다. 예를 들어 벡터의 덧셈, 분수의 사칙연산, 금액 합산 등에서 메서드 호출보다 직관적인 코드가 됩니다.1. 기본 문법 한눈에 보기연산자 메서드는 반드시 해당 타입 내부에 public static으로 선언하며, 반환형과 매개변수는 연산 의미에 맞게 정의합니다. 단항 연산자는 매개변수 1개, 이항 연산자는 2개를 받습니다.public readonly struct Vector2{ public double X { get; } public double Y { get; } public Vector2(double x, double y) { X = x; Y = y; } // 이항 연.. 더보기 C# IComparable과 IComparer를 이용한 정렬 로직 최적화 C#에서 컬렉션을 정렬할 때 IComparable과 IComparer 인터페이스를 효과적으로 활용하면 코드 유지보수와 성능 면에서 큰 도움이 됩니다. 이번 글에서는 두 인터페이스의 차이와 실제 정렬 로직에 적용하는 방법을 간단히 설명합니다.1. IComparable 기본 이해IComparable은 객체 자체에 정렬 기준을 정의하는 인터페이스입니다. 클래스에 CompareTo 메서드를 구현하여 기본 정렬 방식을 제공합니다.public class Product : IComparable{ public string Name { get; set; } public decimal Price { get; set; } public int CompareTo(Product other) { .. 더보기 이전 1 다음