std::shared_ptr<T>::owner_hash
std::size_t owner_hash() const noexcept; |
(с C++26) |
Возвращает неуказанное значение, такое что для любого объекта other где owner_equal(other) является true, owner_hash() == other.owner_hash() является true.
Это хеширование используется для того, чтобы общие и слабые указатели могли использоваться в качестве ключей в неупорядоченных ассоциативных контейнерах, обычно посредством std::owner_hash.
Значение результата
Значение, которое идентично для любого std::shared_ptr или std::weak_ptr объекта, разделяющего то же владение.
Примечания
| Макрос проверки наличия функции | Значение | Стандарт | Функция |
|---|---|---|---|
__cpp_lib_smart_ptr_owner_equality |
202306L | (C++26) | Включение возможности использования std::shared_ptr в качестве ключей в неупорядоченных ассоциативных контейнерах |
Пример
См. также
|
(C++26) |
предоставляет хеширование, основанное на владении, для общих и слабых указателей (класс) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/memory/shared_ptr/owner_hash