Espacios de nombres
Variantes
Acciones

std::shared_ptr<T>::operator*, std::shared_ptr<T>::operator->

De cppreference.com
< cpp‎ | memory‎ | shared ptr
 
 
Biblioteca de servicios
 
Gestión de memoria dinámica
Punteros inteligentes
(C++11)
(C++11)
(C++11)
(hasta C++17)
(C++11)
(C++23)
Asignadores de memoria
Recursos de memoria
Almacenamiento no inicializado
Algoritmos de memoria no inicializada
Algoritmos restringidos de memoria no inicializada
Apoyo para recolección de basura
(C++11)(hasta C++23)
(C++11)(hasta C++23)
(C++11)(hasta C++23)
(C++11)(hasta C++23)
(C++11)(hasta C++23)
(C++11)(hasta C++23)
Misceláneos
(C++20)
(C++11)
(C++11)
 
 
T& operator*() const noexcept;
(1) (desde C++11)
T* operator->() const noexcept;
(2) (desde C++11)

Desreferencia del puntero almacenado. El comportamiento no está definido si el puntero almacenado es nulo.

Contenido

[editar] Parámetros

(Ninguno)

[editar] Valor de retorno

1) El resultado de desreferenciar el puntero almacenado, es decir, *get().
2) El puntero almacenado, es decir, get().

[editar] Notas

Cuando T (posiblemente calificado-cv) es void, no se especifica si se declara la función (1).

Cuando T es un tipo array, no se especifica si estas funciones miembro están declaradas, y si lo están, cuál es su tipo de retorno, excepto que la declaración (no necesariamente la definición) de estas funciones está bien formada.

(desde C++17)

Si cualquiera de las funciones se declara a pesar de no estar especificada, no se especifica cuál es su tipo de retorno, excepto que se garantiza que la declaración (aunque no necesariamente la definición) de la función es legal. Esto hace posible instanciar std::shared_ptr<void>.

[editar] Ejemplo

#include <iostream>
#include <memory>
 
struct Foo
{
   Foo(int in) : a(in) {}
   void print() const
   {
      std::cout << "a = " << a << '\n';
   }
   int a;
};
 
int main()
{
   auto ptr = std::make_shared<Foo>(10);
   ptr->print();
   (*ptr).print();
}

Salida:

a = 10
a = 10

[editar] Véase también

Devuelve el puntero almacenado.
(función miembro pública) [editar]