最終更新日時: 2026年02月25日 13時06分35秒 (JST)
Akira Takahashi が更新

履歴 編集

function template
<memory>

# std::owner_equal::operator()(C++26)

    template <class T, class U>
    constexpr bool operator()(const shared_ptr<T>& a,
                              const shared_ptr<U>& b) const noexcept; // (1) C++26

    template <class T, class U>
    constexpr bool operator()(const shared_ptr<T>& a,
                              const weak_ptr<U>& b) const noexcept;   // (2) C++26

    template <class T, class U>
    constexpr bool operator()(const weak_ptr<T>& a,
                              const shared_ptr<U>& b) const noexcept; // (3) C++26

    template <class T, class U>
    constexpr bool operator()(const weak_ptr<T>& a,
                              const weak_ptr<U>& b) const noexcept;  // (4) C++26

## 概要

所有権ベースでの等値比較を行う。

## 戻り値

    return a.owner_equal(b);

## バージョン

### 言語

- C++26

## 関連項目

- `std::shared_ptr::owner_equal()`
- `std::weak_ptr::owner_equal()`

## 参照

- P1901R2 Enabling the Use of `weak_ptr` as Keys in Unordered Associative Containers
- P3037R6 `constexpr std::shared_ptr` and friends