Klasa CStringElementTraits
Ta klasa udostępnia funkcje statyczne używane przez klasy kolekcji przechowujące CString
obiekty.
Składnia
template <typename T>
class CStringElementTraits
Parametry
T
Typ danych, które mają być przechowywane w kolekcji.
Elementy członkowskie
Definicje typów publicznych
Nazwa/nazwisko | opis |
---|---|
CStringElementTraits::INARGTYPE | Typ danych używany do dodawania elementów do obiektu klasy kolekcji. |
CStringElementTraits::OUTARGTYPE | Typ danych używany do pobierania elementów z obiektu klasy kolekcji. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CStringElementTraits::CompareElements | (Statyczne) Wywołaj tę funkcję, aby porównać dwa elementy ciągu pod kątem równości. |
CStringElementTraits::CompareElementsOrdered | (Statyczne) Wywołaj tę funkcję, aby porównać dwa elementy ciągu. |
CStringElementTraits::CopyElements | (Statyczne) Wywołaj tę funkcję, aby skopiować CString elementy przechowywane w obiekcie klasy kolekcji. |
CStringElementTraits::Hash | (Statyczne) Wywołaj tę funkcję, aby obliczyć wartość skrótu dla danego elementu ciągu. |
CStringElementTraits::RelocateElements | (Statyczne) Wywołaj tę funkcję, aby przenieść CString elementy przechowywane w obiekcie klasy kolekcji. |
Uwagi
Ta klasa udostępnia funkcje statyczne do kopiowania, przenoszenia i porównywania ciągów oraz tworzenia wartości skrótu. Te funkcje są przydatne podczas używania klasy kolekcji do przechowywania danych opartych na ciągach. Użyj CStringElementTraitsI , gdy wymagane są porównania bez uwzględniania wielkości liter. Użyj CStringRefElementTraits , gdy obiekty ciągu mają być traktowane jako odwołania.
Aby uzyskać więcej informacji, zobacz Klasy kolekcji ATL.
Wymagania
Nagłówek: cstringt.h
CStringElementTraits::CompareElements
Wywołaj tę funkcję statyczną, aby porównać dwa elementy ciągu pod kątem równości.
static bool CompareElements(INARGTYPE str1, INARGTYPE str2);
Parametry
str1
Pierwszy element ciągu.
str2
Drugi element ciągu.
Wartość zwracana
Zwraca wartość true, jeśli elementy są równe, w przeciwnym razie wartość false.
CStringElementTraits::CompareElementsOrdered
Wywołaj tę funkcję statyczną, aby porównać dwa elementy ciągu.
static int CompareElementsOrdered(INARGTYPE str1, INARGTYPE str2);
Parametry
str1
Pierwszy element ciągu.
str2
Drugi element ciągu.
Wartość zwracana
Zero, jeśli ciągi są identyczne, 0, jeśli str1 jest mniejszy niż str2, lub > 0, jeśli str1 jest większy niż str2.< Metoda CStringT::Compare służy do przeprowadzania porównań.
CStringElementTraits::CopyElements
Wywołaj tę funkcję statyczną, aby skopiować CString
elementy przechowywane w obiekcie klasy kolekcji.
static void CopyElements(
T* pDest,
const T* pSrc,
size_t nElements);
Parametry
PDest
Wskaźnik do pierwszego elementu, który otrzyma skopiowane dane.
pSrc
Wskaźnik do pierwszego elementu do skopiowania.
nElements
Liczba elementów do skopiowania.
Uwagi
Elementy źródłowe i docelowe nie powinny się nakładać.
CStringElementTraits::Hash
Wywołaj tę funkcję statyczną, aby obliczyć wartość skrótu dla danego elementu ciągu.
static ULONG Hash(INARGTYPE str);
Parametry
Str
Element string.
Wartość zwracana
Zwraca wartość skrótu obliczaną przy użyciu zawartości ciągu.
CStringElementTraits::INARGTYPE
Typ danych używany do dodawania elementów do obiektu klasy kolekcji.
typedef T::PCXSTR INARGTYPE;
CStringElementTraits::OUTARGTYPE
Typ danych używany do pobierania elementów z obiektu klasy kolekcji.
typedef T& OUTARGTYPE;
CStringElementTraits::RelocateElements
Wywołaj tę funkcję statyczną, aby przenieść CString
elementy przechowywane w obiekcie klasy kolekcji.
static void RelocateElements(
T* pDest,
T* pSrc,
size_t nElements);
Parametry
PDest
Wskaźnik do pierwszego elementu, który otrzyma przeniesione dane.
pSrc
Wskaźnik do pierwszego elementu w celu przeniesienia.
nElements
Liczba elementów do przeniesienia.
Uwagi
Ta funkcja statyczna wywołuje metodę memmove, która jest wystarczająca dla większości typów danych. Jeśli obiekty przenoszone zawierają wskaźniki do własnych elementów członkowskich, ta funkcja statyczna musi zostać zastąpiona.
Zobacz też
Klasa CElementTraitsBase
Klasa CStringElementTraitsI
Omówienie klasy