#15 C++ Жемчужины STD - min max операции и сравнения

00:04 О минимальных, максимальных операциях и операциях сравнения в стандартной библиотеке C++. 03:57 Операции min и max -Функции std::min и std::max возвращают меньшее и большее из двух значений соответственно. Есть разные версии функций: 11:37 -с пользовательским компаратором; 02:08 -со списком инициализаторов (позволяет работать не только с двумя значениями); 11:01 -для работы с векторами (принимают диапазон — итераторы начала и конца). 03:09 Ключевое отличие списка инициализаторов от вектора: в первом количество элементов фиксировано на этапе компиляции, во втором — может меняться динамически. Функция minmax std::minmax принимает два значения или диапазон и возвращает пару — минимальное и максимальное значения. Функция полезна для сортировки двух значений. Есть версия, которая работает со списком инициализаторов. 01:48 04:15 Важная особенность: -minmax передаёт параметры и возвращает результат по константной ссылке. Это позволяет работать с типами, которые нельзя копировать. ' Но если передавать в minmax временные значения, фиксация результата по ссылке приведёт к неопределённому поведению — временные объекты могут быть уничтожены после вызова функции. 06:24 08:29 Операция clamp Функция clamp ограничивает значение заданным диапазоном. Например, если задать диапазон [0, 1], то: - значение 1,5 будет ограничено до 1; - −1,5 — до 0; 07:33 - 0,45 останется без изменений. 13:45 Часто используется в шейдерах для ограничения значений цветов. 09:52 Сравнение диапазонов Функция equal сравни ает два диапазона, заданных итераторами, и определяет, равны ли они. Существует несколько версий функции: использующие полный диапазон, работающие только с начальным итератором второго диапазона (при условии, что длины диапазонов равны) и принимающие пользовательский предикат (компаратор). 10:30 Лексикографическое сравнение Лексикографическое сравнение определяет, какой из двух диапазонов «идёт раньше» — аналогично расположению слов в словаре. Сравнение останавливается при первом различии элементов. Для лексикографического сравнения требуются два полных диапазона. 09:14 12:35

Иконка канала C++ для всех
4 подписчика
12+
5 просмотров
4 часа назад
12+
5 просмотров
4 часа назад

00:04 О минимальных, максимальных операциях и операциях сравнения в стандартной библиотеке C++. 03:57 Операции min и max -Функции std::min и std::max возвращают меньшее и большее из двух значений соответственно. Есть разные версии функций: 11:37 -с пользовательским компаратором; 02:08 -со списком инициализаторов (позволяет работать не только с двумя значениями); 11:01 -для работы с векторами (принимают диапазон — итераторы начала и конца). 03:09 Ключевое отличие списка инициализаторов от вектора: в первом количество элементов фиксировано на этапе компиляции, во втором — может меняться динамически. Функция minmax std::minmax принимает два значения или диапазон и возвращает пару — минимальное и максимальное значения. Функция полезна для сортировки двух значений. Есть версия, которая работает со списком инициализаторов. 01:48 04:15 Важная особенность: -minmax передаёт параметры и возвращает результат по константной ссылке. Это позволяет работать с типами, которые нельзя копировать. ' Но если передавать в minmax временные значения, фиксация результата по ссылке приведёт к неопределённому поведению — временные объекты могут быть уничтожены после вызова функции. 06:24 08:29 Операция clamp Функция clamp ограничивает значение заданным диапазоном. Например, если задать диапазон [0, 1], то: - значение 1,5 будет ограничено до 1; - −1,5 — до 0; 07:33 - 0,45 останется без изменений. 13:45 Часто используется в шейдерах для ограничения значений цветов. 09:52 Сравнение диапазонов Функция equal сравни ает два диапазона, заданных итераторами, и определяет, равны ли они. Существует несколько версий функции: использующие полный диапазон, работающие только с начальным итератором второго диапазона (при условии, что длины диапазонов равны) и принимающие пользовательский предикат (компаратор). 10:30 Лексикографическое сравнение Лексикографическое сравнение определяет, какой из двух диапазонов «идёт раньше» — аналогично расположению слов в словаре. Сравнение останавливается при первом различии элементов. Для лексикографического сравнения требуются два полных диапазона. 09:14 12:35

, чтобы оставлять комментарии