Share via


CStringElementTraits-klasse

Opmerking

De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Deze klasse biedt statische functies die worden gebruikt door verzamelingsklassen die objecten opslaan CString .

Syntaxis

template <typename T>
class CStringElementTraits

Parameterwaarden

T
Het type gegevens dat moet worden opgeslagen in de verzameling.

Leden

Openbare typedefs

Naam Description
CStringElementTraits::INARGTYPE Het gegevenstype dat moet worden gebruikt voor het toevoegen van elementen aan het verzamelingsklasseobject.
CStringElementTraits::OUTARGTYPE Het gegevenstype dat moet worden gebruikt voor het ophalen van elementen uit het verzamelingsklasseobject.

Openbare methoden

Naam Description
CStringElementTraits::CompareElements (Statisch) Roep deze functie aan om twee tekenreekselementen voor gelijkheid te vergelijken.
CStringElementTraits::CompareElementsOrdered (Statisch) Roep deze functie aan om twee tekenreekselementen te vergelijken.
CStringElementTraits::CopyElements (Statisch) Roep deze functie aan om elementen te kopiëren CString die zijn opgeslagen in een verzamelingsklasseobject.
CStringElementTraits::Hash (Statisch) Roep deze functie aan om een hash-waarde voor het opgegeven tekenreekselement te berekenen.
CStringElementTraits::RelocateElements (Statisch) Roep deze functie aan om elementen te verplaatsen CString die zijn opgeslagen in een verzamelingsklasseobject.

Opmerkingen

Deze klasse biedt statische functies voor het kopiëren, verplaatsen en vergelijken van tekenreeksen en voor het maken van een hash-waarde. Deze functies zijn handig wanneer u een verzamelingsklasse gebruikt om gegevens op basis van tekenreeksen op te slaan. Gebruik CStringElementTraitsI wanneer hoofdlettergevoelige vergelijkingen vereist zijn. Gebruik CStringRefElementTraits wanneer de tekenreeksobjecten moeten worden behandeld als verwijzingen.

Zie ATL-verzamelingsklassen voor meer informatie.

Requirements

Koptekst: cstringt.h

CStringElementTraits::CompareElements

Roep deze statische functie aan om twee tekenreekselementen voor gelijkheid te vergelijken.

static bool CompareElements(INARGTYPE str1, INARGTYPE str2);

Parameterwaarden

str1
Het eerste tekenreekselement.

str2
Het tweede tekenreekselement.

Retourwaarde

Retourneert waar als de elementen gelijk zijn, anders onwaar.

CStringElementTraits::CompareElementsOrdered

Roep deze statische functie aan om twee tekenreekselementen te vergelijken.

static int CompareElementsOrdered(INARGTYPE str1, INARGTYPE str2);

Parameterwaarden

str1
Het eerste tekenreekselement.

str2
Het tweede tekenreekselement.

Retourwaarde

Nul als de tekenreeksen identiek zijn, < 0 als str1 kleiner is dan str2 of > 0 als str1 groter is dan str2. De methode CStringT::Compare wordt gebruikt om de vergelijkingen uit te voeren.

CStringElementTraits::CopyElements

Roep deze statische functie aan om elementen te kopiëren CString die zijn opgeslagen in een verzamelingsklasseobject.

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

Parameterwaarden

pDest
Wijs het eerste element aan dat de gekopieerde gegevens ontvangt.

pSrc
Wijs het eerste element aan dat u wilt kopiëren.

nElements
Het aantal elementen dat moet worden gekopieerd.

Opmerkingen

De bron- en doelelementen mogen niet overlappen.

CStringElementTraits::Hash

Roep deze statische functie aan om een hash-waarde te berekenen voor het opgegeven tekenreekselement.

static ULONG Hash(INARGTYPE str);

Parameterwaarden

Str
Het tekenreekselement.

Retourwaarde

Retourneert een hashwaarde, berekend met behulp van de inhoud van de tekenreeks.

CStringElementTraits::INARGTYPE

Het gegevenstype dat moet worden gebruikt voor het toevoegen van elementen aan het verzamelingsklasseobject.

typedef T::PCXSTR INARGTYPE;

CStringElementTraits::OUTARGTYPE

Het gegevenstype dat moet worden gebruikt voor het ophalen van elementen uit het verzamelingsklasseobject.

typedef T& OUTARGTYPE;

CStringElementTraits::RelocateElements

Roep deze statische functie aan om elementen te verplaatsen CString die zijn opgeslagen in een verzamelingsklasseobject.

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

Parameterwaarden

pDest
Wijs het eerste element aan dat de verplaatste gegevens ontvangt.

pSrc
Wijs het eerste element aan dat moet worden verplaatst.

nElements
Het aantal elementen dat moet worden verplaatst.

Opmerkingen

Deze statische functie roept memmove aan, wat voldoende is voor de meeste gegevenstypen. Als de objecten die worden verplaatst, aanwijzers naar hun eigen leden bevatten, moet deze statische functie worden overschreven.

Zie ook

CElementTraitsBase-klasse
CStringElementTraitsi-klasse
Overzicht van klassen