Определение кучи, используемое std::is_heap и std::make_heap ⇐ C++

Программы на C++. Форум разработчиков
Anonymous
Определение кучи, используемое std::is_heap и std::make_heap

Сообщение Anonymous »

Согласно этой странице, существует два определения кучи (используются std::make_heap, std::is_heap и т. д.):До C++20:

Диапазон произвольного доступа [,last) представляет собой кучу относительно
компаратора comp if bool(comp(first[(i - 1) / 2] , first)) имеет значение false
для всех целых чисел i в (
, последний — первый).

Начиная с C++20:

Диапазон произвольного доступа [, last) представляет собой кучу по отношению к компаратору comp, если диапазон представляет собой кучу по отношению к comp и

Код: Выделить всё

std::identity{}
(проекция идентичности).

У вас есть более простое определение? Например, когда comp имеет значение std::less ? Я не понимаю использования.

Подробнее здесь: https://stackoverflow.com/questions/788 ... dmake-heap

Вернуться в «C++»