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


Класс CElementTraitsBase

Этот класс предоставляет методы копирования и перемещения по умолчанию для класса коллекции.

Синтаксис

template<typename T>
class CElementTraitsBase

Параметры

T
Тип данных, хранящихся в коллекции.

Участники

Общедоступные определения типов

Имя Описание
CElementTraitsBase::INARGTYPE Тип данных, используемый для добавления элементов в объект класса коллекции.
CElementTraitsBase::OUTARGTYPE Тип данных, используемый для извлечения элементов из объекта класса коллекции.

Открытые методы

Имя Описание
CElementTraitsBase::CopyElements Вызовите этот метод для копирования элементов, хранящихся в объекте класса коллекции.
CElementTraitsBase::RelocateElements Вызовите этот метод для перемещения элементов, хранящихся в объекте класса коллекции.

Замечания

Этот базовый класс определяет методы копирования и перемещения элементов в классе коллекции. Он используется классами CDefaultElementTraits, CStringRefElementTraits и CStringElementTraitsI.

Дополнительные сведения см. в разделе "Классы коллекций ATL".

Требования

Заголовок: atlcoll.h

CElementTraitsBase::CopyElements

Вызовите этот метод для копирования элементов, хранящихся в объекте класса коллекции.

static void CopyElements(
    T* pDest,
    const T* pSrc,
    size_t nElements);

Параметры

pDest
Указатель на первый элемент, который получит скопированные данные.

pSrc
Указатель на первый элемент для копирования.

nElements
Число элементов для копирования.

Замечания

Исходные и конечные элементы не должны перекрываться.

CElementTraitsBase::INARGTYPE

Тип данных, используемый для добавления элементов в коллекцию.

typedef const T& INARGTYPE;

CElementTraitsBase::OUTARGTYPE

Тип данных, используемый для получения элементов из коллекции.

typedef T& OUTARGTYPE;

CElementTraitsBase::RelocateElements

Вызовите этот метод для перемещения элементов, хранящихся в объекте класса коллекции.

static void RelocateElements(
    T* pDest,
    T* pSrc,
    size_t nElements);

Параметры

pDest
Указатель на первый элемент, который получит перемещаемые данные.

pSrc
Указатель на первый элемент для перемещения.

nElements
Количество перемещаемых элементов.

Замечания

Этот метод вызывает memmove, который достаточно для большинства типов данных. Если перемещаемые объекты содержат указатели на собственные члены, этот метод должен быть переопределен.

См. также

Общие сведения о классе