Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
deductiongu...::shared_ptr(3) C++ Standard Libarydeductiongu...::shared_ptr(3)

NAME
       deductionguidesforstd::shared_ptr - deductionguidesforstd::shared_ptr

Synopsis
	  Defined in header <memory>
	  template   <class   T>				   (1)	(since
       C++17)
	  shared_ptr(std::weak_ptr<T>) -> shared_ptr<T>;
	  template  <class  T,	class  D>			   (2)	(since
       C++17)
	  shared_ptr(std::unique_ptr<T,	D>) -> shared_ptr<T>;

	  These	 deduction  guides are provided	for std::shared_ptr to account
       for the edge
	  cases	missed by the implicit deduction guides.

	  Note that there is no	class template argument	deduction from pointer
       types because
	  it is	impossible to distinguish pointers  obtained  from  array  and
       non-array forms of
	  new.

Example
       // Run this code

	#include <memory>

	int main()
	{
	    auto p = std::make_shared<int>(42);
	    std::weak_ptr w{p};	   // explicit deduction guide is used in this
       case
	    std::shared_ptr p2{w}; // explicit deduction guide is used in this
       case
	}

http://cppreference.com		  2022.07.31	 deductiongu...::shared_ptr(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=deductionguidesforstd::shared_ptr&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help