Содержание
- 2. Задание: Разработать класс (по заданию преподавателя) и программу, иллюстрирующую возможности данного класса Интерфейс программы: В программе
- 3. Сначала немного теории… Класс – тип данных, определяемый пользователем и представляющий собой модель реального объекта в
- 4. Объявление класса В языке С++ описание класса состоит из ключевого слова class, после которого пишется имя
- 5. Объявление класса Все члены класса делят на закрытые и открытые. Видимостью элементов класса управляют спецификаторы доступа
- 6. Создание объектов на базе класса Для того, чтобы воспользоваться классом, необходимо объявить объект этого класса (создать
- 7. Пример класса Пример объявления класса: class Point // Объявление класса Point { private: int x, y;
- 8. Заголовочные файлы и файлы определений В языке С++ используются два типа файлов: *.h — заголовочный файл,
- 9. Размещение объявлений и определений class Point // Объявление класса Point { private: int x, y; //
- 10. Конструкторы и деструкторы Конструктор – это функция-член класса, автоматически вызываемая программой при создании экземпляра класса. Конструкторы
- 11. Конструкторы и деструкторы class Point // Объявление класса Point { private: int x, y; // Координаты
- 12. Пример разработки класса Разработать класс Равносторонний восьмиугольник и программу, иллюстрирующую возможности данного класса. Класс должен хранить
- 13. Восьмиугольник Чтобы было удобно работать с восьмиугольниками, нужно правильно определить свойства и методы класса. Если задавать
- 14. Восьмиугольник − свойства Некоторые параметры в классе должны быть всегда положительные, например длина стороны, поэтому зададим
- 15. Восьмиугольник Координаты вершин легко вычислить из этих свойств объекта (L, x и y) Для этого запишем
- 16. Восьмиугольник − свойства Хранить отдельно в классе радиус вписанной окружности не надо, его всегда можно вычислить,
- 17. Восьмиугольник − конструкторы В открытую часть класса вставим конструкторы, которые будут вызываться при создании объектов. Создадим
- 18. Восьмиугольник − методы Далее вставляем в класс методы, описанные в задании: методы, позволяющие задавать свойства восьмиугольника
- 19. Восьмиугольник − методы Вставляем в класс следующие методы, описанные в задании: методы, позволяющие читать свойства восьмиугольника;
- 20. Восьмиугольник − методы Вставляем в класс другие методы, описанные в задании: методы, позволяющие вычислять площадь и
- 21. Восьмиугольник − методы Вставляем эти методы в класс: class Octagon // 8-угольник { . . .
- 22. Класс Восьмиугольник Теперь получаем класс: class Octagon // 8-угольник { private: int x, y; // Координаты
- 23. Добавление методов Можно добавить метод, позволяющий читать координаты вершин восьмиугольника. Для этого нужно указать методу номер
- 24. Чтение координат вершин восьмиугольника int Octagon::GetTopX(UINT i) // Координата x i-той вершины { float fl =
- 25. Чтение координат вершин восьмиугольника Если нужно вернуть два значения, придется использовать структуру struct Point { int
- 26. Доработанный класс Восьмиугольник class Octagon // 8-угольник { private: int x, y; // Координаты центра UINT
- 27. Применение класса Восьмиугольник void main() { Octagon a1, a2; Point p; a1.SetXY(100,200); a2.SetXY(55, 55); a1.SetL(25); a2.SetL(50);
- 28. Класс Логический элемент Для начала, нужно понять, для чего нужен такой логический элемент. Он нужен для
- 29. Логический элемент - свойства Значения входных сигналов, поданных на входы элемента, можно хранить в статическом (а
- 30. Логический элемент - конструкторы Кроме того, класс Логический элемент должен иметь конструкторы, позволяющие создавать элементы с
- 31. Класс Логический элемент Предварительно класс будет выглядеть так. class LogElement { private: bool* InpArray; // Указатель
- 32. Логический элемент - методы В соответствии с заданием, класс Логический элемент должен иметь соответствующие методы, например:
- 33. Класс Логический элемент Теперь класс будет выглядеть так. class LogElement { private: bool* InpArray; // Указатель
- 34. Логический элемент - методы Теперь определяем метод, задающий число входов: void LogElement::SetCount(UINT s) { // Сначала
- 35. Логический элемент - конструкторы Используя метод задающий число входов и метод освобождающий память запишем конструкторы. Конструктор
- 36. Логический элемент - конструкторы Второй конструктор будем использовать, когда захотим создать объект с заданным числом входов
- 37. Логический элемент - методы Теперь определяем метод, задающий сигнал на i-том входе: void LogElement::Set(UINT i, bool
- 38. Логический элемент - методы Теперь определяем метод, задающий сигнал на всех входах массивом данных: void LogElement::Set(bool*
- 39. Логический элемент - методы Метод, считывающий сигнал с i-того входа: bool LogElement::Get(UINT i) // i =
- 40. Логический элемент - методы Чтобы номера входов начинались с 1, индекс надо сдвинуть на 1: Метод,
- 41. Логический элемент - методы Метод, вычисляющий сигнал в соответствии с логической функцией определяется этой самой функцией,
- 42. Класс Логический элемент Тогда можно будет работать просто и удобно с логическими элементами, например так: Рассчитать
- 44. Скачать презентацию