Содержание
- 2. Перегрузка функций Перегрузка функций Часто бывает удобно, чтобы функции, реализующие один и тот же алгоритм для
- 3. Перегрузка функций Использование нескольких функций с одним и тем же именем, но с различными типами параметров,
- 4. Перегрузка функций Тип возвращаемого результата в разрешении не участвует. Рассмотрим примеры: int max(int, int); int max(int,
- 5. Перегрузка функций При вызове функции компилятор выбирает соответствующий типу фактических параметров вариант функции. Если точного соответствия
- 6. Перегрузка функций Если ни одного соответствия не найдено, выдается диагностическое сообщение об ошибке. Неоднозначность может появиться
- 7. Перегрузка функций Следующие функции нельзя считать перегруженными: int max(int, int); double max(int, int); long max(int, const
- 8. Перегрузка функций Следующий пример показывает неоднозначность при наличии параметров по умолчанию. int f(int a){return a;} int
- 9. Перегрузка функций Неоднозначность возникает при неопределенности преобразований, например, float f(float); double f(double); f(10); // к какому
- 10. Перегрузка функций - функции не могут быть перегруженными, если описание их параметров отличается только модификатором const
- 11. Шаблоны функций *Шаблоны функций В С++ есть мощное средство параметризации алгоритма – шаблоны функций. С помощью
- 12. Шаблоны функций Общий формат объявления шаблонной функции: template заголовок { // тело функции } - список
- 13. Шаблоны функций В общем случае список шаблона может содержать несколько типов, например, template void f() {
- 14. Шаблоны функций В качестве первого примера шаблона функции вспомним функцию swap: template void swap(Type &arg_1, Type
- 15. Шаблоны функций Вызов этой функции может быть осуществлен двумя способами: - как вызов обычной функции без
- 16. Шаблоны функций - со спецификацией параметров шаблона int a=120, b=-45; swap (a,b); Обратите внимание на то,
- 17. Шаблоны функций В качестве параметров шаблона функции могут выступать как стандартные типы, так и типы, определенные
- 18. Шаблоны функций Рассмотрим пример class Test { protected: float test; public: Test(){}; Test(float ):test(t){}; Test operator
- 19. Шаблоны функций ostream &operator { out return out; } // шаблон функции умножения template Type mult(Type
- 20. Шаблоны функций // вызов функции для пользовательского типа Test tst_1(3.4F), tst_2(-4.55F); cout Как говорилось ранее, можно
- 21. Шаблоны функций Этот шаблон может быть использован и при работе со стандартными типами данных: float f_1
- 22. Шаблоны функций Рассмотрим пример несложного шаблонного класса. template class Test { protected: Type test; public: Test(){};
- 23. Шаблоны функций Реализация составных и дружественных функций шаблонного класса: template ostream &operator &t) { out return
- 24. Шаблоны функций Объявление объектов шаблонных классов и их использование: Test tst_int_1=10, tst_int_2=200; cout Test tst_double_1(77.84), tst_double_2(4.1);
- 25. Шаблоны функций Функция в качестве возвращаемого результата Мы знаем, что функция не может вернуть в качестве
- 26. Шаблоны функций #include using namespace std; double mult(double d) { return d*2; } typedef double (*PF)(double);
- 27. Шаблоны функций PF func() { return mult; } int main() { PF ptr_fun = func(); cout
- 28. Функция main Функция, которой передается управление после запуска (вызова) программы на исполнение, должна иметь имя main.
- 29. Функция main Стандарт предусматривает два формата функции: тип main() { // ……. } тип main(int argc,
- 30. Функция main Пример вызова функции main с параметрами из командной строки: d:\CPP\program_main.exe one two three
- 31. Директивы препроцессора * Директивы препроцессора Препроцессором называется первая фаза компиляции. Инструкции (команды) препроцессора называются директивами. Они
- 32. Директивы препроцессора Поиск указанного файла начинается со стандартного каталога include, имеющегося в любой реализации языка. После
- 33. Директивы препроцессора Заголовочные файлы обычно имеют расширение h и могут содержать: - определение типов, встроенных функций,
- 34. Директивы препроцессора В заголовочных файлах не должно быть определение функций и данных. Их принято выносить в
- 35. Директивы препроцессора #include”file_name.h” file_name_main.cpp Файл основной программы, содержащий функцию main file_name_1.cpp file_name_2.cpp …………………………. file_name_n.cpp Файлы реализации
- 36. Директивы препроцессора Директива #define Директива define определяет подстановку в тексте программы. Она используется для определения: -
- 37. Директивы препроцессора - макросов, которые выглядят как функции, но реализуются подстановкой из текста в текст программы:
- 38. Директивы препроцессора Например, для описанного макроса вызов cout приведет к получению числа 6, для правильного ответа
- 39. Директивы препроцессора - символов, управляющих условной трансляцией. Они используются совместно с директивами #ifdef и #ifndef. Общий
- 40. Директивы препроцессора Имена, объявляемые через директиву define рекомендуется писать прописными символами, чтобы зрительно отличать их от
- 41. Директивы препроцессора Директивы условной трансляции Директивы условной трансляции #if, #ifdef, #ifndef применяются для того, чтобы исключить
- 42. Директивы препроцессора Формат директивы #if: #if константное_выражение ….. [ #elif константное_выражение ] ….. [ #elif константное_выражение
- 43. Директивы препроцессора Исключаемые блоки могут содержать как описания, так и исполняемые операторы. Пример условно исключения различных
- 44. Директивы препроцессора В константных выражениях может использоваться проверка, определена ли константа с помощью директивы difine, например:
- 45. Директивы препроцессора И еще одно применение директив условной трансляции – временное комментирование фрагмента кода. Иногда используется
- 46. Предопределенные макросы Например, макрос __splusplus определен, если программа компилируется в среде С++. #ifdef __cplusplus cout #else
- 47. Предопределенные макросы Другие макросы: - __DATE__ - содержит строку с текущей датой (месяц, день, год), например,
- 48. Предопределенные макросы - __LINE__ - текущая строка исходного текста; - __TIME__ - текущее время.
- 49. Предопределенные макросы
- 60. Скачать презентацию








































![Директивы препроцессора Формат директивы #if: #if константное_выражение ….. [ #elif константное_выражение ]](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/1114827/slide-41.jpg)
















Алгоритмы с пословицами
Презентация на тему Основные понятия и правила записи функций в Excel
Соловьиные вечера. Акция
Изучение библиографических стилей. Составление списка источников. Лабораторная работа 7
Оформление списка литературы
Обмен сообщениями через Bluetooth
Кодирование информации. Мастер-класс
Таблица для склеивания цепочек из мешков
1.11_Многомерные _массивы (1)
Кодирование информации. Декодирование
Библиотека и читатель: вместе по жизни
Export flow для Сбера
Интерфейс
Модуль “Поиск”
Викторина для самых умных (4 класс)
Характеристика процесса проектирования ВУ
Розробка програмного забезпечення підсистеми безпеки “Розумного дому”
Burint OC 12. Установка
Этапы решения расчетных задач на компьютере
Smart. Оформление POS-кредитов просто, быстро и без бумаг
Лекция_8_Модель_процесса_Иерархия_Состояния_Операции_над_процессами
Основы кибербезопасности. Виды угроз
Повторение информатики
Test nr 18
Методика решения
Создание YouTube-канала о жизни школы
Электронные таблицы. Электронные таблицы
Правила поиска информации в Интернете