Espacios de nombres
Variantes
Acciones

std::pointer_traits<Ptr>::pointer_to

De cppreference.com
 
 
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)
 
std::pointer_traits
Funciones miembro
pointer_traits::pointer_to
(C++11)
 
Definido en el archivo de encabezado <memory>
static pointer
pointer_to( element_type& r );
(1) (desde C++11)
(miembro de la especialización pointer_traits<Ptr>)
(2)
static pointer
pointer_to( element_type& r )noexcept;
(desde C++11)
(hasta C++20)
(miembro de la especialización pointer_traits<T*>)
staticconstexpr pointer
pointer_to( element_type& r )noexcept;
(desde C++20)
(miembro de la especialización pointer_traits<T*>)

Construye un puntero desreferenciable u objeto similar a un puntero ("puntero sofisticado") para su argumento.

1) La versión de esta función en la plantilla no especializada std::pointer_traits simplemente llama a Ptr::pointer_to(r), y si Ptr no proporciona una función miembro estática pointer_to, la instanciación de esta función es un error en tiempo de compilación.
2) La versión de esta función en la especialización de std::pointer_traits para tipos puntero devuelve std::addressof(r)

Contenido

[editar]Parámetros

r - Referencia a un objeto de tipo element_type&, excepto si element_type es void, en cuyo caso el tipo de r no está especificado.

[editar]Valor de retorno

Un puntero desreferenciable a r, del tipo pointer_traits<>::pointer.

[editar]Excepciones

1) Sin especificar (típicamente igual que Ptr::pointer_to)


[editar]Notas

La versión de la biblioteca Boost.Intrusive de esta función devuelve pointer(std::addressof(r)) si Ptr::pointer_to no existe.

[editar]Véase también

(C++11)
Obtiene la dirección real de un objeto, incluso si el operador & está sobrecargado.
(plantilla de función)[editar]
(hasta C++20)
Obtiene la dirección de un objeto, incluso si operator& está sobrecargado.
(función miembro pública de std::allocator)[editar]
[estático](C++20)(opcional)
Obtiene un puntero sin formato a partir de un puntero sofisticado (el inverso de pointer_to)
(función miembro estática pública)[editar]
(C++20)
Obtiene un puntero sin formato de un tipo similar a un puntero.
(plantilla de función)[editar]
close