MoreEffectiveC++

작성자 : 류상민(neocoin, ZP 99)

목적 : 2002.03.14 ZeroPage 세미나용 항해지도

C, C++ 다른점

Only Class

Inheritance - Overriding - virtual

RTTI (Real Time Type Information)

Item 24 RTTI 관련(http://zeropage.org/moin/moin.cgi/MoreEffectiveC_2b_2b_2fEfficiency#head-df8e5cb1fbb906f15052798c446df0ed08dfeb91)

Double-Dispatch (Multi-Dispatch)

Item 31(http://zeropage.org/moin/moin.cgi/MoreEffectiveC_2b_2b_2fTechniques3of3)
RTTI를 이용해 구현 부분(http://zeropage.org/moin/moin.cgi/MoreEffectiveC_2b_2b_2fTechniques3of3#head-85091850a895b3c073a864be41ed402384d1868c)

Capsulization - private, public, protected

Polymorphism - Overloading

Item 34 name mangle 관련(http://zeropage.org/moin/moin.cgi/MoreEffectiveC_2b_2b_2fMiscellany#head-a8fe938a36d3be47de007ce24f1d367295cd7ea7)

C++에서 생각되는 문제

  • 표준 개발 환경의 부재 ( vs Java 언어, C# )
    • 직렬화
      • 이유 : class에 대하여 vtbl과 vtp의 구현 방법 표준이 비존재, 당연히 직렬화에 관한 표준 역시 비존재, 벤더들에게 구현을 맡겼음. 그래서 특히나 각 DB업체에서 OODB의 제작시 자사들만의 표준을 가져야 한다는 벽에 부딪침.
      • 다른 언어 : Java는 공통의 플랫폼 차원(Serialization(http://java.sun.com/j2se/1.3/docs/guide/serialization/)), C#은 .NET Specification에서 명시된 attribute 이용, 직렬화 인자 구분, 역시 플랫폼에서 지원
  • C와 호환성?
    • 관련 페이지
      Item 34(http://zeropage.org/moin/moin.cgi/MoreEffectiveC_2b_2b_2fMiscellany#head-9b5275859c0186f604a64a08f1bdef0b7e9e8e15)
    • 생각해볼 name mangling - overloading
      Item 34 name mangle 관련(http://zeropage.org/moin/moin.cgi/MoreEffectiveC_2b_2b_2fMiscellany#head-a8fe938a36d3be47de007ce24f1d367295cd7ea7)
  • 불완전 객체지향
  • 업체 지원 문제

C++ 의 미래?

재미있는 문서

후기

처음에는 문서 작성을 시작했고, 레이아웃을 잡아가는 과정에서 항해지도를 작성하고, 대본(?)을 만들어 보는건 어떨까 생각을 해보았다. 언제나 새로운 시도는 기대되는 것

Thread

Retrieved from http://wiki.zeropage.org/wiki.php/MoreEffectiveC++/C++이 어렵다?
last modified 2021-02-07 05:23:48