std::hive<T,Allocator>::is_within_hard_limits
static constexpr bool is_within_hard_limits( std::hive_limits limits ) noexcept; | (начиная с C++26) |
Проверяет, находится ли заданная вместимость блока limits в пределах жёстких ограничений вместимости блока. Эквивалентно
constexpr auto hard{block_capacity_hard_limits()};
return hard.min <= limits.min and limits.min <= limits.max and limits.max <= hard.max;
Возвращаемое значение
true, если limits находится в пределах жёстких ограничений вместимости блока.
Сложность
Константная.
Пример
#include <hive>
#include <iostream>
using Garage = std::hive<int>;
static_assert(
Garage::is_within_hard_limits(Garage::block_capacity_hard_limits()) &&
Garage::is_within_hard_limits(Garage::block_capacity_default_limits())
);
int main()
{
auto limits{std::hive<int>::block_capacity_hard_limits()};
auto print = [](std::hive_limits limits)
{
std::cout << "Limits {min: " << limits.min << ", max: " << limits.max << "} is ";
std::cout << (Garage::is_within_hard_limits(limits) ? "within" : "without")
<< " block capacity hard limits\n";
};
print(limits);
limits.min = 0;
print(limits);
}
Возможный вывод:
Limits {min: 3, max: 255} is within block capacity hard limits
Limits {min: 0, max: 255} is without block capacity hard limits
См. также
| возвращает количество элементов, которые могут храниться в выделенной в данный момент памяти (открытая функция-член) |
|
| резервирует память (открытая функция-член) |
|
| уменьшает потребление памяти, освобождая неиспользуемую память (открытая функция-член) |
|
| освобождает зарезервированные блоки и соответственно уменьшает вместимость (открытая функция-член) |
|
| возвращает текущие ограничения вместимости блока (открытая функция-член) |
|
|
[static] | возвращает ограничения вместимости блока по умолчанию (открытая статическая функция-член) |
|
[static] | возвращает жёсткие ограничения вместимости блока (открытая статическая функция-член) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/hive/is_within_hard_limits