home | help
std::unique_ptr::get(3)        C++ Standard Libary	 std::unique_ptr::get(3)

NAME
     std::unique_ptr::get - std::unique_ptr::get

Synopsis
	pointer get() const noexcept;  (since C++11)
				       (constexpr since C++23)

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

Parameters
	(none)

Return value
	Pointer to the managed object or nullptr if no object is owned.

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:
	  friend std::ostream& operator<<(std::ostream& os, Res const& 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();

See also
	release returns a pointer to the managed object and releases the  owner-
     ship
		(public member function)

http://cppreference.com 	   2024.06.10		 std::unique_ptr::get(3)

home | help