Содержание
- 2. Наследование используется для группировки общих черт классов Общие поведение и реализация Общая только реализация Общее только
- 3. Общее поведение производные классы разделяют публичные операции (методы) базового класса позволяют писать полиморфный код, основанный на
- 4. Общая реализация Классы Stack и Set могут быть реализованы в виде связного списка (на основе класса
- 5. Класс List class List { public: int find(const element& ); // если не найдено, то возврат
- 6. Для общей реализации можно использовать закрытое наследование
- 7. Классы Stack и Set : (закрытое наследование) class Stack : private List { public: void push(
- 8. Классы Stack и Set : (реализация методов) void Stack :: push( const element& e ){ insert(
- 9. Для общей реализации можно использовать закрытые свойства
- 10. Классы Stack и Set : (закрытые свойства) class Stack { public: void push( const element& );
- 11. Классы Stack и Set : (реализация методов) void Stack :: push( const element& e ){ s.insert(
- 12. Классы List, Stack и Set : (использование) void main( int, char*[] ){ Stack st ; Set
- 13. Общее поведение Классы Screen и Printer имеют общий интерфейс (методы) имеют общий контекст использования имеют различную
- 14. Класс Screen class Screen { public: void clear( ); void add( Display_char ch ); void add(
- 15. Класс Printer class Printer { public: void clear( ); void add( Display_char ch ); void add(
- 16. Для общего поведения используем абстрактный базовый класс чистые виртуальные методы свойств либо мало, либо нет вообще
- 17. Абстрактный базовый класс class Display_medium { public: virtual Point size( ) const = 0; virtual Point
- 18. Метод clear( ) void Display_medium :: clear( void ) { int x , y ; for
- 19. Производный класс Screen class Screen : public Display_medium { public: Screen( ); ~Screen( ); Point size(
- 20. Производный класс Printer class Printer : public Display_medium { public: Printer( ); ~Printer( ); Point size(
- 21. Использование абстрактного класса void say_hello( Display_medium& m ) { m.add( “Hello, world \n” ); } extern
- 22. Абстрактный класс если класс имеет хотя бы один чистый виртуальный метод, то он абстрактный создать объект
- 24. Скачать презентацию