std::shared_ptr<T>::unique - cppreference.com
De cppreference.com
|
|
(en desuso en C++17) (eliminado en C++20) |
|
Comprueba si *this es la única instancia de shared_ptr que gestiona el objeto actual, es decir, si use_count() == 1.
Parámetros
(Ninguno)
Valor de retorno
true si *this es la única instancia de shared_ptr que gestiona el objeto actual, false de lo contrario.
Notas
Esta función quedó obsoleta en C++17 y se eliminó en C++20 porque use_count es solo una aproximación en un entorno multihilos (véase Notas en use_count).
Ejemplo
#include <memory> #include <iostream> 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'; }
Salida:
sp1.unique() == true sp1.unique() == false
Véase también
devuelve el número de objetos shared_ptr que se refieren al mismo objeto gestionado. (función miembro pública) [editar] |