std::shared_ptr::unique(3)

NAME
std::shared_ptr::unique - std::shared_ptr::unique

Synopsis
   bool unique() const noexcept; (deprecated in C++17)
                        (removed in C++20)
   Checks if *this is the only shared_ptr instance managing the current object, i.e.
   whether use_count() == 1.

Parameters
   (none)

Return value
   true if *this is the only shared_ptr instance managing the current object, false
   otherwise.

Notes
   This function was deprecated in C++17 and removed in C++20 because use_count is only
   an approximation in multithreaded environment (see Notes in use_count).

Example
// Run this code
 #include <iostream>
 #include <memory>
 int main()
 {
     auto sp1 = std::make_shared<int>(5);
     std::cout << std::boolalpha;
     std::cout << "sp1.unique() == " << sp1.unique() << '\n';
     std::shared_ptr<int> sp2 = sp1;
     std::cout << "sp1.unique() == " << sp1.unique() << '\n';
 }

Output:
 sp1.unique() == true
 sp1.unique() == false

See also
             returns the number of shared_ptr objects referring to the same managed
   use_count object
             (public member function)