最終更新日時: 2025年10月14日 14時41分25秒 (JST)
Akira Takahashi が更新

履歴 編集

function
<memory>

# std::enable_shared_from_this::コンストラクタ(C++11)

    constexpr
    enable_shared_from_this() noexcept;                               // (1) C++11

    enable_shared_from_this(const enable_shared_from_this&) noexcept; // (2) C++11
    constexpr
    enable_shared_from_this(const enable_shared_from_this&) noexcept; // (2) C++26

## enable_shared_from_thisオブジェクトの構築

- (1) デフォルトコンストラクタ
- (2) コピーコンストラクタ

## 効果

- (1), (2) :
  - C++11 : `enable_shared_from_this<T>`オブジェクトを構築する
  - C++17 : 保持する`this`を指すポインタ（`weak_ptr<T>`）を値初期化（デフォルト構築）する

## バージョン

### 言語

- C++11

### 処理系

- GCC: 4.3.6 ✅
- Clang: 3.0 ✅
- ICC: ?
- Visual C++: 2008 (TR1) ✅, 2010 ✅, 2012 ✅, 2013 ✅

## 参照

- P0033R0 Re-enabling `shared_from_this`
- P0033R1 Re-enabling `shared_from_this` (revision 1)
- P3037R6 `constexpr std::shared_ptr` and friends