Поделиться через


Структура pointer_traits

Предоставляет сведения, необходимые объектом класса allocator_traits шаблона для описания выделения с типом Ptr указателя.

template<class Ptr>
    struct pointer_traits;

Заметки

Ptr может быть сырцовым указателем типа Ty * или класса со следующими свойствами.

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
    };
Предупреждающее замечаниеВнимание

Хотя стандарт C++, указывающее участника rebind в качестве шаблона псевдонима, Visual C++, реализующий элемент повторно привязать как struct.

JJ190031.collapse_all(ru-ru,VS.110).gifОпределения типов

Имя

Описание

typedef T2 difference_type

Тип T2Ptr::difference_type, если этот тип существует; в противном случае ptrdiff_t.Если Ptr исходный указатель, тип ptrdiff_t.

typedef T1 element_type

Тип T1Ptr::element_type, если этот тип существует; в противном случае Ty.Если Ptr исходный указатель, тип Ty.

typedef Ptr pointer

Типом является Ptr.

JJ190031.collapse_all(ru-ru,VS.110).gifСтруктуры

Имя

Описание

pointer_traits::rebind

Пытается преобразовать базовый тип указателя на указанный тип.

JJ190031.collapse_all(ru-ru,VS.110).gifМетоды

Имя

Описание

Метод pointer_traits::pointer_to

Преобразование произвольная ссылка на объект класса Ptr.

Требования

заголовок: <memory>

std пространство имен:

См. также

Ссылки

<memory>

Класс allocator_traits