C/C++ 디자인 패턴 (3) — 팩토리 메서드(Factory Method)

내보내기 기능을 만든다고 하자. "헤더를 쓰고, 행을 하나씩 쓰고, 마무리한다"는 절차는 CSV든 JSON이든 같은데, 어떤 Writer 객체를 쓸지만 다르다. 이 절차를 가진 부모 클래스가 new CsvWriter를 직접 부르면 JSON을 지원할…

Continue ReadingC/C++ 디자인 패턴 (3) — 팩토리 메서드(Factory Method)

C++ 고급 문법 (19) — 함수 바인딩(Function Binding)

shape.area()라는 호출이 실제로 어느 함수로 이어질지는 두 시점 중 하나에 정해진다. 컴파일할 때 정적 타입만 보고 정하면 정적 바인딩(static binding, early binding), 실행할 때 객체의 실제 타입을 보고 정하면 동적…

Continue ReadingC++ 고급 문법 (19) — 함수 바인딩(Function Binding)