Содержание
- 2. Введение в объектно-ориентированное программирование Часто бывает удобно, чтобы функции, реализующие один и тот же алгоритм для
- 3. Введение в объектно-ориентированное программирование Рассмотрим пример известной функции swap, меняющую местами значения своих аргументов. void swap(int
- 4. Введение в объектно-ориентированное программирование Эта функция работает с целым типом данных, ее можно перегрузить для других
- 5. Введение в объектно-ориентированное программирование void swap(char &a, char &b) { char temp; temp = a; a
- 6. Введение в объектно-ориентированное программирование В рассмотренном примере есть три функции с одинаковыми именами, но с различными
- 7. Введение в объектно-ориентированное программирование конкретный экземпляр функции. Как уже было сказано, перегрузка функций считается как слабая
- 8. Введение в объектно-ориентированное программирование Дальнейшим развитием перегружаемых функций стали шаблоны функций, которые позволяют вместо множества перегружаемых
- 9. Введение в объектно-ориентированное программирование Общий формат шаблона функции следующий: template тип_рез_та имя_функции(список аргументов) { // тело
- 10. Введение в объектно-ориентированное программирование Ключевое слово template сообщает компилятору, что это не просто функция, а шаблон
- 11. Введение в объектно-ориентированное программирование Теперь вернемся к перегруженным функциям swap , реализуя их через единственный шаблон:
- 12. Введение в объектно-ориентированное программирование Теперь, вместо трех функций у нас есть одно единственное определение, работающее с
- 13. Введение в объектно-ориентированное программирование Разработчики языка С++ пошли еще дальше – параметризировали тип. Речь идет о
- 14. Введение в объектно-ориентированное программирование Integer(const Integer &); ~Integer(){} Integer operator -(const Integer&); bool operator Integer &operator
- 15. Введение в объектно-ориентированное программирование В этом классе одно единственное поле int item; целого типа. Может появиться
- 16. Введение в объектно-ориентированное программирование Пример такого подхода: template class Number { protected: Type item; public: Number(){};
- 17. Введение в объектно-ориентированное программирование Шаблоны классов очень часто используются в практическом программировании. Силами разработчиков была создана
- 18. Типы данных языка С++ Концепция типов данных Отметим сразу, что язык С++ является строго типизированным языком,
- 19. Типы данных языка С++ Типы данных определяют: внутреннее представление данных в программе; множество значений, которые могут
- 20. Типы данных языка С++ Все типы языка делят на основные и составные. В языке С++ есть
- 21. Типы данных языка С++ Основные типы данных Основные (стандартные) типы часто называют арифметическими, поскольку их можно
- 22. Типы данных языка С++ wchar_t – расширенный символьный тип; bool – логический тип; float – вещественный
- 23. Типы данных языка С++ signed – знаковый; unsigned – беззнаковый. Целый тип (int) Стандартом языка С++
- 24. Типы данных языка С++ Спецификатор short перед именем типа указывает компилятору, что под объект выделяется 2
- 25. Типы данных языка С++ Спецификатор unsigned предназначен для обозначения без знаковых положительных чисел. Символьный тип (char)
- 26. Типы данных языка С++ Расширенный символьный тип (wchar_t) Предназначен для работы с символами для кодировки которых
- 27. Типы данных языка С++ Логический тип (bool) Величины этого типа принимают всего два значения true (1)
- 28. Типы данных языка С++ Типы с плавающей запятой (float, double) Стандарт языка предусматривает три типа данных
- 29. Типы данных языка С++ Типы char, bool и int относятся к целочисленным типам.
- 30. Типы данных языка С++ Типы данных, определяемые пользователем Язык С++ позволяет создавать свои собственные типы, ориентированные
- 31. Типы данных языка С++ Общий формат переименования следующий: typedef тип новый_тип [размерность]; Примеры: typedef unsigned int
- 32. Типы данных языка С++ *Перечислимый тип данных (enum) В некоторых случаях возникает необходимость определения конечного множества
- 33. Типы данных языка С++ Общий формат перечисления следующий: enum [имя_типа]{список констант}; Имя типа задается в случае,
- 34. Типы данных языка С++ Примеры: enum Color {red, blue, green}; int main() { Color color; color
- 35. Типы данных языка С++ Следующее объявление задает инициализацию: enum Color {red=3, blue=5, green}; // color =
- 36. Типы данных языка С++ К объектам перечислимого типа можно применять все операции, допустимые к целочисленным типам,
- 37. Типы данных языка С++ Имена перечислимых констант должны быть уникальными, а значения могут совпадать. Еще один
- 38. Типы данных языка С++ Структуры (struct) Структурные объекты или просто структуры в С++ унаследованы из языка
- 39. Типы данных языка С++ Общий формат объявления структуры: struct [name, tag] { тип_1 поле_1; тип_2 поле_2;
- 40. Типы данных языка С++ Элементы структуры, именуемые далее полями могут иметь любой известный компилятору тип, кроме
- 41. Типы данных языка С++ Пример структуры: struct Student { char Name[20]; int Age; double Mark; void
- 42. Типы данных языка С++ В данном примере объявлена единственная функция, позволяющая просматривать значение полей экземпляра данного
- 43. Типы данных языка С++ Например, Student st_1; Student st_2 = {"Ivan", 20, 3.4}; Доступ к компонентам
- 44. Типы данных языка С++ В С++ помимо структур имеется возможность определять свои типы используя классы. Отличие
- 45. Типы данных языка С++ Еще одна возможность создание своего собственного типа – объединения (смеси). Их формат
- 46. Типы данных языка С++ Его размер равен размеру поля, занимающему максимальный объем в памяти. Пример: union
- 47. Типы данных языка С++ Для представления объекта этого типа потребуется 160 байт памяти (20 объектов типа
- 48. Типы данных языка С++
- 49. Типы данных языка С++
- 50. Типы данных языка С++
- 51. Типы данных языка С++
- 53. Скачать презентацию