Partilhar via


Struct pointer_traits

Fornece informações que são necessárias a um objeto da classe de modelo allocator_traits para descrever um alocador com tipo de ponteiro Ptr.

template<class Ptr>
    struct pointer_traits;

Comentários

O Ptr pode ser um ponteiro bruto do tipo Ty * ou classe com as propriedades a seguir.

template<class Ty, class... Rest>
    struct Ptr
    { // describes a pointer type usable by allocators
    typedef Ptr pointer;
    typedef T1 element_type; // optional
    typedef T2 difference_type; // optional
    template<class Other>
        using rebind = typename Ptr<Other, Rest...>; // optional
    
    static pointer pointer_to(element_type& obj); // optional
    };

Aviso

Quando o padrão do C++ especificar o membro de rebind como um modelo de alias, as ferramentas do Visual C++ reassociações como struct.

Typedefs

Nome

Descrição

typedef T2 difference_type

O tipo T2 é Ptr::difference_type se esse tipo existir, caso contrário ptrdiff_t. Se Ptr é um ponteiro bruto, o tipo é ptrdiff_t.

typedef T1 element_type

O tipo T1 é Ptr::element_type se esse tipo existir, caso contrário Ty. Se Ptr é um ponteiro bruto, o tipo é Ty.

typedef Ptr pointer

O tipo é Ptr.

Structs

Nome

Descrição

pointer_traits::rebind

Tentativas de conversão do tipo subjacente do ponteiro para um tipo especificado.

Métodos

Nome

Descrição

Método pointer_traits::pointer_to

Converte arbitrária uma referência a um objeto da classe Ptr.

Requisitos

Cabeçalho: <memória>

Namespace: std

Consulte também

Referência

<memory>

Classe allocator_traits