- •Задание №1. Строки и функции в c.
- •В строке string1 определяет последнее вхождение в нее строки string2. Возвращает указатель на начало вхождения. В случае неуспеха возвращается -1.
- •Задание №2. Массивы и указатели.
- •Задание №3. Ввод данных из командной строки.
- •Задание №4. Побитовые операции
- •Задание №5. Шаблоны функций.
- •Задание №6. Основы ооп, перегрузка операторов
- •Задание №7. Наследование
- •Задание №8. Полиморфизм
Задание №8. Полиморфизм
Требуется создать класс для отображения нескольких графических компонент одновременно. Графические компоненты должны реализовывать общий интерфейс (sf::Drawable или абстрактный класс, унаследованный от него). Должна быть возможность получения нужного элемента по его индексу. В качестве примера создайте несколько экземпляров вашего класса из задания №7 и отобразите их одновременно.
№ 1 class ColumnLayoutKb.
Расположение в виде колонок. Число колонок задаётся в конструкторе. Выбирать текущую визуальную компоненту и изменять размеры колонок можно с помощью клавиатуры.
№ 2 class RowLayoutKb.
Расположение в виде рядов. Число рядов задаётся в конструкторе. Выбирать текущую визуальную компоненту и изменять размеры рядов можно с помощью клавиатуры.
№ 3 class GridLayoutKb.
Расположение в виде таблицы. Число строк и столбцов задаётся в конструкторе. Выбирать текущую визуальную компоненту и изменять размеры строк и столбцов можно с помощью клавиатуры.
№ 4 class HTabLayoutKb.
Расположение с помощью горизонтальных вкладок. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе. Выбирать текущую вкладку и менять их местами можно с помощью клавиатуры.
№ 5 class VTabLayoutKb.
Расположение с помощью вертикальных вкладок. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе. Выбирать текущую вкладку и менять их местами можно с помощью клавиатуры.
№ 6 class StackedLayoutKb.
Расположение с помощью горизонтальных вкладок, вкладки расположены друг над другом. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе. Выбирать текущую вкладку и менять их местами можно с помощью клавиатуры.
№ 7 class ColumnLayoutMouse.
Расположение в виде колонок. Число колонок задаётся в конструкторе. Выбирать текущую визуальную компоненту и изменять размеры колонок можно с помощью мыши.
№ 8 class RowLayoutMouse.
Расположение в виде рядов. Число рядов задаётся в конструкторе. Выбирать текущую визуальную компоненту и изменять размеры рядов можно с помощью мыши.
№ 9 class GridLayoutMouse.
Расположение в виде таблицы. Число строк и столбцов задаётся в конструкторе. Выбирать текущую визуальную компоненту и изменять размеры строк и столбцов можно с помощью мыши.
№ 10 class HTabLayoutMouse.
Расположение с помощью горизонтальных вкладок. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе. Выбирать текущую вкладку и менять их местами можно с помощью мыши.
№ 11 class VTabLayoutMouse.
Расположение с помощью вертикальных вкладок. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе. Выбирать текущую вкладку и менять их местами можно с помощью мыши.
№ 12 class StackedLayoutMouse.
Расположение с помощью горизонтальных вкладок, вкладки расположены друг над другом. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе. Выбирать текущую вкладку и менять их местами можно с помощью мыши.
№ 13 class ColumnLayoutFlexible.
Расположение в виде колонок. Есть возможность добавить и удалить колонку с помощью методов класса.
№ 14 class RowLayoutFlexible.
Расположение в виде рядов. Есть возможность добавить и удалить строку с помощью методов класса.
№ 15 class GridLayoutFlexible.
Расположение в виде таблицы. Есть возможность добавить и удалить строку или столбец с помощью методов класса.
№ 16 class HTabLayoutFlexible.
Расположение с помощью горизонтальных вкладок. Одновременно видно только одну вкладку. Есть возможность добавить и удалить вкладку с помощью методов класса.
№ 17 class VTabLayoutFlexible.
Расположение с помощью вертикальных вкладок. Одновременно видно только одну вкладку. Есть возможность добавить и удалить вкладку с помощью методов класса.
№ 18 class StackedLayoutFlexible.
Расположение с помощью горизонтальных вкладок, вкладки расположены друг над другом. Одновременно видно только одну вкладку. Есть возможность добавить и удалить вкладку с помощью методов класса.
№ 19 class ColumnLayoutFixed.
Расположение в виде колонок. Число колонок задаётся в конструкторе
№ 20 class RowLayoutFixed.
Расположение в виде рядов. Число рядов задаётся в конструкторе
№ 21 class GridLayoutFixed.
Расположение в виде таблицы. Число строк и столбцов задаётся в конструкторе
№ 22 class HTabLayoutFixed.
Расположение с помощью горизонтальных вкладок. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе.
№ 23 class VTabLayoutFixed.
Расположение с помощью вертикальных вкладок. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе.
№ 24 class StackedLayoutFixed.
Расположение с помощью горизонтальных вкладок, вкладки расположены друг над другом. Одновременно видно только одну вкладку. Число вкладок задаётся в конструкторе.
