event

    [More Effective C#] Chapter 2. 요약 (1)

    [ Item 11 : API에는 변환 연산자를 작성하지 말라 ] 1. 다른 타입을 원하는 커스텀 타입으로 변환하고 싶을 때는 생성자를 사용하라. 생성자는 새로운 객체를 만든다는 사실을 명확히 알려준다. public class Circle { ... static public implicit operator Ellipse(Circle c) { return new Ellipse(...) } } public static void Flatten(Ellipse e) { e.r1 /= 2; } var c = new Circle(...); Flatten(c); // Circle -> Ellipse 로 암묵적 변환 따라서 위와 같은 상황에서 Flatten() 함수는 암묵적 변환 과정에서 새롭게 생성된 Ellipse 객체..