김백일.cedar 님이 쓰신 글 :
: 박정모 님이 쓰신 글 :
: :
: :
: : 기능이 있는데도 필요성을 못느끼거나, 너무 어려워서 사용을 자제한다면 없어져도 좋을
: : 기능 일겁니다. c++에는 있지만 c#이나 java가 지원하지 않는것이 다중상속 만은 아니죠.
: :
: : 저 역시 다중상속과 멤버 클래스가 왜 다른지 잘 이해하지 못하던 때가 있었습니다.
: :
: : 없어질 기능은 빨리 사라지는게 좋겠죠... ^.^
: :
: : ps : 혹시 차기나 미래의 c++ builder에서 다중상속을 지원않는다는 얘기가 있습니까?
: : 그러면 안돼는데... 다중상속 꼭 필요한데... ㅠ.ㅠ
:
: C++Builder가 아니라 ANSI C++에서 다중 상속이 계속 지원될 것인가를 알아보시면 됩니다.
: 이건 C++의 창시자인 Bjarne Stroustrup의 홈페이지에 가면 금방 알 수 있죠.
:
http://www.research.att.com/~bs/bs_faq.html
: 위에 FAQ에 따르면, C++ 특유의 다중 상속, 예외(exception), 템플릿(template), 실행 시간 型 판별(run-time type identification)등의 기능은 더 개선할 가능성은 있지만, 앞으로 삭제될 기능은 없다고 합니다.
:
: : ps2 : 인터페이스는 class implementation과 관련이 있지 않습니까? 그거라면 별로 쓰고
: : 싶지 않습니다.
:
: 상속(inheritance)은 부모 클래스의 구현(implementation)을 상속하는 '구현 상속(implementaion inheritance)'과, 인터페이스만을 상속하는 '인터페이스 상속(interface inheritance)'이 있습니다. C++은 이 두가지를 문법적으로 명확히 구분하지 않은 것이고, 자바나 델파이는 명확히 구분해 둔 겁니다. (C++에서 인터페이스와 같은 것을 만들려면 pure abstract base class를 만들면 되지요.) 자바나 델파이는 interface를 사용해서 다중 상속을 흉내내지만, 이것은 인터페이스 상속만 가능할 뿐 구현 상속이 불가능한 약점이 있는 겁니다.
:
: : 박지훈.임프 님이 쓰신 글 :
: : : 글쎄요.. 긁적긁적...
: : : 다중상속은 C++ 개발자들조차 거의 쓰지 않는 죽은 기능이나 마찬가지입니다.
: : : 물론 일단 있는 기능이라면 어떤 식으로든 활용하는 사람도 아주 없지는 않겠지만, 개발 뿐 아니라
: : : 유지보수까지 힘들어지기 때문에 다중상속은 안쓰는 것이 오래전에 대세로 굳어졌죠.
: : :
: : : 자바나 C#이 다중상속을 지원하지 않는 것은 기능을 추가하기 힘들어서가 아니라, 다중상속이
: : : 그다지 많이 필요하지 않고 문제를 많이 일으키기 때문이지요.
: : : 아마 볼랜드에 요구한다고 해도... 콧방귀도 안뀔 겁니다. ^^;;
: : :
: : : 어떤 이유로 다중상속이 필요한지 모르겠습니다만, 어린왕자님이 말씀하셨듯이 인터페이스를
: : : 이용해서 다중상속을 구현해보는 것도 좋을 것 같습니다. 인터페이스 다중상속의 예는 VCL의
: : : 소스코드를 보시면 줄줄이 나오죠. 클래스와 인터페이스를 상속받아 하나의 새 클래스를 정의하는
: : : 겁니다.
: : :
: : : 그럼...
: : :
: : :
: : : 박정모 님이 쓰신 글 :
: : : :
: : : :
: : : : 왜 델파이는 다중 상속을 지원안하는 겁니까?
: : : : 컴파일속도 좀 느려져도 괜찮은데, 문법이 까다로워져도 상관없는데,
: : : : Pascal언어 확장팩으로 라도 좋으니까 제발 다중 상속좀 지원해줬으면...
: : : :
: : : : 정말 미치겠네요. 깊이 있는 클래스 설계할 때마다 부딪히는게 다중
: : : : 상속입니다. 다중상속 지원안해서 해야하는 이 노가다의 버거움이여... ㅠ.ㅠ
: : : : 서로 다른 클래스에 같은성질의 멤버함수 만들고 또 만들고~
: : : :
: : : : 박지훈씨... 박지훈씨 힘 있으니까 볼랜드에다가 제안좀 해주십시요.
: : : : 언어 확장팩으로라도 다중상속 지원하게 해달라고.
: : : :
: : : : 다중상속을 위한 Pascal언어 확장팩이 나오면 100만원 한다고 해도
: : : : 사서 쓰겠습니다.
: : : :
: : : : 그러지말고 C++ Builder 쓰라고요? 저도 C++ Builder쓰고 싶습니다. 그런데
: : : : C++ Builder로 만들어 놓으면 아무래도 범용성이 떨어지니까... ㅠ.ㅠ
: : : :
: : : :