Qt C++ 다중상속 예제 (Multiple inheritance) 프로그래밍 소스 해외 블로거의 글을 번역한 포스트입니다. 아쉽게도 원래 글을 적으신 분이 블로그를 폭파하셔서 링크는 남길 수가 없네요. Qt도 C++ 계열이라 여기서 소개하는 소스는 C++과 관련된 어느 소스에나 적용할 수 있습니다.다중상속 예제는 계산기 구현으로 이뤄졌으니 참고하세요. Qt C++ 다중상속 예제 시작합니다. CalculatorForm 정의CalculatorForm에는 ui_calculatorform.h 파일이 포함됩니다. 1#include "ui_calculatorform.h"cs 모든 클래스들은 QWidge와 Ui::CalculatorForm의 서브 클래스로 선언됩니다. 1234567891011class Calcula..
C++ 상속, 다이아몬드 문제란? 그리고 피하는 방법 위 그림은 C++ 상속, 다이아몬드 문제를 이해하는 데 도움이 됩니다. 클래스 A에서 파생되는 클래스 B와 C가 있다고 가정합니다. 그리고 C++ 상속(다이아몬드를 유발하는 다중 상속)으로 클래스 B와 C의 파생 클래스 D도 생성합니다. (상상만으로도 한숨 나오는 C++ 상속 구조입니다) 여기서 C++ 상속, 다이아몬드 문제의 발생 이유가 나타납니다. 위 그림을 토대로 구체적인 코드를 작성해 보겠습니다. 123456789101112131415--Animal 클래스는 윗 그림의 클래스 D와 같습니다.-- class Animal { -- ... -- }; // base class{ int weight; public: int getWeight() { ret..