| 
    MGL(Win32)
    
   | 
 
ユニークポインタ [詳解]
#include <mgl_unique_ptr.h>
公開メンバ関数 | |
| constexpr | UniquePtr () noexcept | 
| コンストラクタ  | |
| UniquePtr (UniquePtr &)=delete | |
| UniquePtr & | operator= (UniquePtr &)=delete | 
| UniquePtr (UniquePtr &&rhs) noexcept | |
| ムーブコンストラクタ   | |
| UniquePtr & | operator= (UniquePtr &&rhs) noexcept | 
| 演算子によるムーブ   | |
| ~UniquePtr () noexcept | |
| デストラクタ  | |
| template<class U = T, class... Args> | |
| UniquePtr & | New (Args &&...args) noexcept | 
| オブジェクトを生成   | |
| template<class U = T, class Initializer , class... Args> | |
| UniquePtr & | InitNew (Initializer initializer, Args &&...args) noexcept | 
| 初期化付きのクラスオブジェクトの生成   | |
| void | Delete () noexcept | 
| オブジェクトの削除  | |
| constexpr T * | Get () const noexcept | 
| ポインタを取得   | |
| constexpr T * | operator-> () const noexcept | 
| 演算子によるポインタへのアクセス   | |
| constexpr std::add_lvalue_reference_t< T > | operator* () const noexcept | 
| 演算子によるポインタの間接参照   | |
| constexpr bool | IsNull () const noexcept | 
| 保持しているポインタがNULLであるかをチェック   | |
| constexpr bool | operator! () const noexcept | 
| 保持しているポインタが無効であるかを取得   | |
| constexpr | operator bool () const noexcept | 
| 保持しているポインタが有効であるかを取得   | |
| std::shared_ptr< T > | MoveSharedPtr () | 
| シェアードポインタへのムーブ   | |
静的公開メンバ関数 | |
| template<class U = T, class... Args> | |
| static UniquePtr | Make (Args &&...args) noexcept | 
| 新たなクラスオブジェクトの生成   | |
| template<class U = T, class Initializer , class... Args> | |
| static UniquePtr | InitMake (Initializer initializer, Args &&...args) noexcept | 
| 新たなクラスオブジェクトの生成   | |
ユニークポインタ
| T | 扱う型の指定。配列には非対応。 | 
      
  | 
  inlinenoexcept | 
ムーブコンストラクタ
| [in] | rhs | 右辺値 | 
      
  | 
  inlinenodiscardconstexprnoexcept | 
ポインタを取得
      
  | 
  inlinestaticnodiscardnoexcept | 
新たなクラスオブジェクトの生成
| U | 生成するクラスの型 | 
| [in] | args | コンストラクタに渡す引数 | 
      
  | 
  inlinenoexcept | 
初期化付きのクラスオブジェクトの生成
| U | 生成するオブジェクトの型。省略時はT型として扱われる。 | 
| [in] | initializer | 初期化用の関数 | 
| [in] | args | コンストラクタに渡す引数 | 
      
  | 
  inlinenodiscardconstexprnoexcept | 
保持しているポインタがNULLであるかをチェック
| true | ポインタがNULL | 
| false | ポインタがNULLではない | 
      
  | 
  inlinestaticnodiscardnoexcept | 
新たなクラスオブジェクトの生成
| U | 生成するクラスの型 | 
| [in] | args | コンストラクタに渡す引数 | 
      
  | 
  inline | 
シェアードポインタへのムーブ
      
  | 
  inlinenoexcept | 
オブジェクトを生成
| U | 生成するオブジェクトの型。省略時はT型として扱われる。 | 
| [in] | args | コンストラクタに渡す引数 | 
      
  | 
  inlineexplicitnodiscardconstexprnoexcept | 
保持しているポインタが有効であるかを取得
| true | 有効 | 
| false | 無効 | 
      
  | 
  inlinenodiscardconstexprnoexcept | 
保持しているポインタが無効であるかを取得
| true | 無効 | 
| false | 有効 | 
      
  | 
  inlinenodiscardconstexprnoexcept | 
演算子によるポインタの間接参照
      
  | 
  inlinenodiscardconstexprnoexcept | 
演算子によるポインタへのアクセス
      
  | 
  inlinenoexcept | 
演算子によるムーブ
| [in] | rhs | 右辺値 |