Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      std::unique_ptr<T,Deleter>::get

      From cppreference.com
      <cpp‎ |memory‎ |unique ptr
       
       
      Memory management library
      (exposition only*)
      Allocators
      Uninitialized memory algorithms
      Constrained uninitialized memory algorithms
      Memory resources
      Uninitialized storage(until C++20)
      (until C++20*)
      (until C++20*)
      Garbage collector support(until C++23)
      (C++11)(until C++23)
      (C++11)(until C++23)
      (C++11)(until C++23)
      (C++11)(until C++23)
      (C++11)(until C++23)
      (C++11)(until C++23)
       
       
      pointer get()constnoexcept;
      (since C++11)
      (constexpr since C++23)

      Returns a pointer to the managed object ornullptr if no object is owned.

      Contents

      [edit]Parameters

      (none)

      [edit]Return value

      Pointer to the managed object ornullptr if no object is owned.

      [edit]Example

      Run this code
      #include <iomanip>#include <iostream>#include <memory>#include <string>#include <utility> class Res{std::string s; public:    Res(std::string arg): s{std::move(arg)}{std::cout<<"Res::Res("<<std::quoted(s)<<");\n";}     ~Res(){std::cout<<"Res::~Res();\n";} private:friendstd::ostream& operator<<(std::ostream& os, Resconst& r){return os<<"Res { s = "<<std::quoted(r.s)<<"; }";}}; int main(){std::unique_ptr<Res> up(new Res{"Hello, world!"});    Res* res= up.get();std::cout<<*res<<'\n';}

      Output:

      Res::Res("Hello, world!");Res { s = "Hello, world!"; }Res::~Res();

      [edit]See also

      returns a pointer to the managed object and releases the ownership
      (public member function)[edit]
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/memory/unique_ptr/get&oldid=160468"

      [8]ページ先頭

      ©2009-2025 Movatter.jp