std::shared_ptr<T>::operator bool
De cppreference.com
< cpp | memory | shared ptr
C++
Biblioteca de servicios
|
|
Gestión de memoria dinámica
|
|
std::shared_ptr
Funciones miembro | ||||
Modificadores | ||||
Observadores | ||||
(C++17) | ||||
(hasta C++20) | ||||
shared_ptr::operator bool | ||||
Funciones no miembro | ||||
(hasta C++20)(hasta C++20)(hasta C++20)(hasta C++20)(hasta C++20)(C++20) | ||||
functions (deprecated in C++20) | ||||
(C++20) | ||||
Guías de deducción(C++17) |
explicit operator bool()constnoexcept; | ||
Verifica si *this almacena un puntero no nulo. Es decir, si get()!= nullptr.
Contenido |
[editar]Parámetros
(Ninguno)
[editar]Valor de retorno
true si *this almacena un puntero, false de lo contrario.
[editar]Notas
Un shared_ptr
vacío (donde use_count()==0) puede almacenar un puntero no nulo accesible mediante get(), p. ej., si se creó utilizando el constructor de alias.
[editar]Ejemplo
Ejecuta este código
#include <iostream>#include <memory> void imprimir(std::shared_ptr<int> ptr){if(ptr){std::cout<<"*ptr="<<*ptr <<"\n";}else{std::cout<<"ptr no es un puntero válido.\n";}} int main(){std::shared_ptr<int> ptr; imprimir(ptr); ptr =std::make_shared<int>(7); imprimir(ptr);}
Salida:
ptr no es un puntero válido. *ptr=7
[editar]Véase también
Devuelve el puntero almacenado. (función miembro pública)[editar] |