Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 1.81 KB

File metadata and controls

66 lines (47 loc) · 1.81 KB

owner_hash

  • memory[meta header]
  • std[meta namespace]
  • weak_ptr[meta class]
  • function[meta id-type]
  • cpp26[meta cpp]
size_t owner_hash() const noexcept; // (1) C++26

概要

所有権ベースでのハッシュ値を取得する。

戻り値

所有権が等価な(owner_equal()trueを返す)shared_ptrおよびweak_ptrオブジェクトに対して、同じハッシュ値を返す。

備考

この関数は、所有権ベースでのハッシュを提供する。

owner_equal()std::owner_hashを組み合わせて、weak_ptrunordered_mapunordered_setのキーとして使用できる。

詳細は、shared_ptrowner_hash()メンバ関数を参照。

#include <iostream>
#include <memory>

int main()
{
  std::shared_ptr<int> sp(new int(42));
  std::weak_ptr<int> wp = sp;

  std::cout << std::boolalpha;
  std::cout << (sp.owner_hash() == wp.owner_hash()) << std::endl;
}
  • owner_hash[color ff0000]

出力

true

バージョン

言語

  • C++26

処理系

  • Clang: 22 [mark verified]
  • GCC: 16 [mark verified]
  • Visual C++: 2026 Update 2 [mark noimpl]

関連項目

参照