연산자 오버로드 메서드 CLR 사양에 따르면 연산자 오버로드 메서드는 반드시 public이면서 static이어야 한다. 또한 C#을 포함한 많은 언어들이 연산자 메서드의 매개변수는 반드시 연산자 메서드가 정의된 타입과 같은 타입이어야 한다는 조건도 포함되어있다. 이렇게 하는 이유는 컴파일러가 적절한 시간 내에 가능한 연산자 메서드를 찾아 쉽게 연결할 수 있도록 하기 위함이다. 연산자 오버로드는 다음과 같이 사용할 수 있다. public sealed class MyClass { public static MyClass operator - (MyClass a, MyClass b) { return new MyClass(); } // 이항 연산자 - public static MyClass operator - (M..