Platform::String, klasa
Reprezentuje sekwencyjną kolekcję znaków Unicode używanych do reprezentowania tekstu. Aby uzyskać więcej informacji i przykładów, zobacz Ciągi.
Składnia
public ref class String sealed : Object,
IDisposable,
IEquatable,
IPrintable
Iteratory
Dwie funkcje iteracyjne, które nie są elementami członkowskimi klasy String, mogą być używane z szablonem std::for_each
funkcji do wyliczania znaków w obiekcie String.
Element członkowski | opis |
---|---|
const char16* begin(String^ s) |
Zwraca wskaźnik na początek określonego obiektu String. |
const char16* end(String^ s) |
Zwraca wskaźnik obok końca określonego obiektu String. |
Elementy członkowskie
Klasa String dziedziczy z obiektów i interfejsów IDisposable, IEquatable i IPrintable.
Klasa String ma również następujące typy składowych.
Konstruktory
Element członkowski | opis |
---|---|
String::String | Inicjuje nowe wystąpienie klasy String. |
Metody
Klasa String dziedziczy metody Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose() i ToString() z klasy Platform::Object. Ciąg zawiera również następujące metody.
Metoda | opis |
---|---|
Ciąg::Begin | Zwraca wskaźnik na początku bieżącego ciągu. |
String::CompareOrdinal | Porównuje dwa String obiekty, oceniając wartości liczbowe odpowiadających im znaków w dwóch wartościach ciągu reprezentowanych przez obiekty. |
Ciąg::Concat | Łączy wartości dwóch obiektów String. |
Ciąg::D ata | Zwraca wskaźnik na początku bieżącego ciągu. |
Ciąg::D ispose | Zwalnia lub zwalnia zasoby. |
String::End | Zwraca wskaźnik obok końca bieżącego ciągu. |
String::Equals | Wskazuje, czy określony obiekt jest równy bieżącemu obiektowi. |
String::GetHashCode | Zwraca wartość skrótu dla tego wystąpienia. |
Ciąg::IsEmpty | Wskazuje, czy bieżący obiekt String jest pusty. |
String::IsFastPass | Wskazuje, czy bieżący obiekt String uczestniczy w operacji szybkiego przekazywania . W operacji szybkiego przekazywania zliczanie odwołań jest zawieszone. |
Ciąg::Length | Pobiera długość bieżącego obiektu String. |
String::ToString | Zwraca obiekt String, którego wartość jest taka sama jak bieżący ciąg. |
Operatory
Klasa String ma następujące operatory.
Element członkowski | opis |
---|---|
String::operator==, operator | Wskazuje, czy dwa określone obiekty Ciąg mają tę samą wartość. |
operator+ , operator | Łączy dwa obiekty String w nowy obiekt String. |
String::operator, operator> | Wskazuje, czy wartość jednego obiektu String jest większa niż wartość drugiego obiektu String. |
String::operator=, operator> | Wskazuje, czy wartość jednego obiektu String jest większa lub równa wartości drugiego obiektu String. |
String::operator!= Operator | Wskazuje, czy dwa określone obiekty Ciąg mają różne wartości. |
String::operator, operator< | Wskazuje, czy wartość jednego obiektu String jest mniejsza niż wartość drugiego obiektu String. |
Wymagania
Minimalny obsługiwany klient: Windows 8
Minimalny obsługiwany serwer: Windows Server 2012
Przestrzeń nazw: Platforma
Nagłówek vccorlib.h (dołączony domyślnie)
String::Begin, metoda
Zwraca wskaźnik na początku bieżącego ciągu.
Składnia
char16* Begin();
Wartość zwracana
Wskaźnik na początku bieżącego ciągu.
String::CompareOrdinal, metoda
Metoda statyczna, która porównuje dwa String
obiekty, oceniając wartości liczbowe odpowiadających im znaków w dwóch wartościach ciągu reprezentowanych przez obiekty.
Składnia
static int CompareOrdinal( String^ str1, String^ str2 );
Parametry
str1
Pierwszy obiekt String.
str2
Drugi obiekt String.
Wartość zwracana
Liczba całkowita wskazująca relację leksykalną między dwoma współzadami. W poniższej tabeli wymieniono możliwe wartości zwracane.
Wartość | Stan |
---|---|
-1 | str1 wartość jest mniejsza niż str2 . |
0 | str1 jest równa str2 . |
1 | str1 wartość jest większa niż str2 . |
String::Concat, metoda
Łączy wartości dwóch obiektów String.
Składnia
String^ Concat( String^ str1, String^ str2);
Parametry
str1
Pierwszy obiekt String lub null
.
str2
Drugi obiekt String lub null
.
Wartość zwracana
Nowy obiekt String^, którego wartość jest łączeniem wartości i str1
str2
.
Jeśli str1
parametr jest null
i str2
nie, str1
jest zwracany. Jeśli str2
parametr jest null
i str1
nie, str2
jest zwracany. Jeśli str1
i str2
są , null
zwracany jest pusty ciąg (L").
String::D ata, metoda
Zwraca wskaźnik na początek buforu danych obiektu jako tablicę char16
w stylu C elementów (wchar_t
).
Składnia
const char16* Data();
Wartość zwracana
Wskaźnik na początku const char16
tablicy znaków Unicode (char16
jest typedef dla wchar_t
).
Uwagi
Użyj tej metody, aby przekonwertować element z Platform::String^
na wchar_t*
. String
Gdy obiekt wykracza poza zakres, wskaźnik danych nie jest już prawidłowy. Aby przechowywać dane poza okresem istnienia oryginalnego String
obiektu, użyj wcscpy_s , aby skopiować tablicę do pamięci przydzielonej samodzielnie.
String::D ispose, metoda
Zwalnia lub zwalnia zasoby.
Składnia
virtual override void Dispose();
String::End, metoda
Zwraca wskaźnik obok końca bieżącego ciągu.
Składnia
char16* End();
Wartość zwracana
Wskaźnik wklejenia końca bieżącego ciągu.
Uwagi
Funkcja End() zwraca wartość Begin() + Length.
String::Equals, metoda
Wskazuje, czy określony ciąg ma taką samą wartość jak bieżący obiekt.
Składnia
bool String::Equals(Object^ str);
bool String::Equals(String^ str);
Parametry
Str
Obiekt do porównania.
Wartość zwracana
true
jeśli str
jest równy bieżącemu obiektowi; w przeciwnym razie false
.
Uwagi
Ta metoda jest równoważna statycznej metodzie String::CompareOrdinal. W pierwszym przeciążeniu oczekuje str
się, że parametr można rzutować do obiektu String^.
String::GetHashCode, metoda
Zwraca wartość skrótu dla tego wystąpienia.
Składnia
virtual override int GetHashCode();
Wartość zwracana
Kod skrótu dla tego wystąpienia.
String::IsEmpty, metoda
Wskazuje, czy bieżący obiekt String jest pusty.
Składnia
bool IsEmpty();
Wartość zwracana
true
jeśli bieżący obiekt ma wartość null lub pusty ciąg (L""); w przeciwnym razie false
.String
String::IsFastPass, metoda
Wskazuje, czy bieżący obiekt String uczestniczy w operacji szybkiego przekazywania . W operacji szybkiego przekazywania zliczanie odwołań jest zawieszone.
Składnia
bool IsFastPass();
Wartość zwracana
true
jeśli bieżący String
obiekt jest szybko wklejony; w przeciwnym razie false
.
Uwagi
W wywołaniu funkcji, w której obiekt zliczany do odwołań jest parametrem, a wywoływana funkcja odczytuje tylko ten obiekt, kompilator może bezpiecznie zawiesić zliczanie odwołań i poprawić wydajność wywołań. Nie ma nic przydatnego, że kod może zrobić z tą właściwością. System obsługuje wszystkie szczegóły.
String::Length, metoda
Pobiera liczbę znaków w bieżącym String
obiekcie.
Składnia
unsigned int Length();
Wartość zwracana
Liczba znaków w bieżącym String
obiekcie.
Uwagi
Długość ciągu bez znaków wynosi zero. Długość następującego ciągu wynosi 5:
String^ str = "Hello";
int len = str->Length(); //len = 5
Tablica znaków zwracana przez ciąg::D ata ma jeden dodatkowy znak, który jest kończeniem wartości NULL lub "\0". Ten znak ma również długość dwóch bajtów.
String::operator+ Operator
Łączy dwa obiekty String w nowy obiekt String .
Składnia
bool String::operator+( String^ str1, String^ str2);
Parametry
str1
Pierwszy String
obiekt.
str2
Drugi String
obiekt, którego zawartość zostanie dołączona do str1
obiektu .
Wartość zwracana
true
jeśli wartość str1 jest równa str2; w przeciwnym razie false
.
Uwagi
Ten operator tworzy String^
obiekt zawierający dane z dwóch operandów. Używaj go dla wygody, gdy ekstremalna wydajność nie jest krytyczna. Kilka wywołań "+
" w funkcji prawdopodobnie nie będzie zauważalne, ale jeśli manipulujesz dużymi obiektami lub danymi tekstowymi w ścisłej pętli, użyj standardowych mechanizmów i typów języka C++.
String::operator==, operator
Wskazuje, czy dwa określone obiekty Ciąg mają tę samą wartość tekstową.
Składnia
bool String::operator==( String^ str1, String^ str2);
Parametry
str1
Pierwszy String
obiekt do porównania.
str2
Drugi String
obiekt do porównania.
Wartość zwracana
true
jeśli zawartość str1
obiektu jest równa str2
; w przeciwnym razie false
.
Uwagi
Ten operator jest odpowiednikiem ciągu::CompareOrdinal.
String::operator>
Wskazuje, czy wartość jednego String
obiektu jest większa niż wartość drugiego String
obiektu.
Składnia
bool String::operator>( String^ str1, String^ str2);
Parametry
str1
Pierwszy String
obiekt.
str2
Drugi String
obiekt.
Wartość zwracana
true
jeśli wartość str1
jest większa niż wartość str2
; w przeciwnym razie false
.
Uwagi
Ten operator jest odpowiednikiem jawnego wywoływania parametru String::CompareOrdinal i uzyskania wyniku większego niż zero.
String::operator>=
Wskazuje, czy wartość jednego String
obiektu jest większa lub równa wartości drugiego String
obiektu.
Składnia
bool String::operator>=( String^ str1, String^ str2);
Parametry
str1
Pierwszy String
obiekt.
str2
Drugi String
obiekt.
Wartość zwracana
true
jeśli wartość str1
jest większa lub równa wartości str2
; w przeciwnym razie false
.
String::operator!=
Wskazuje, czy dwa określone String
obiekty mają różne wartości.
Składnia
bool String::operator!=( String^ str1, String^ str2);
Parametry
str1
Pierwszy String
obiekt do porównania.
str2
Drugi String
obiekt do porównania.
Wartość zwracana
true
jeśli str1
nie jest równe str2
; w przeciwnym razie false
.
String::operator<
Wskazuje, czy wartość jednego String
obiektu jest mniejsza niż wartość drugiego String
obiektu.
Składnia
bool String::operator<( String^ str1, String^ str2);
Parametry
str1
Pierwszy String
obiekt.
str2
Drugi String
obiekt.
Wartość zwracana
true
jeśli wartość str1 jest mniejsza niż wartość str2; w przeciwnym razie false
.
String::String, konstruktor
Inicjuje nowe wystąpienie String
klasy przy użyciu kopii danych ciągu wejściowego.
Składnia
String();
String(char16* s);
String(char16* s, unsigned int n);
Parametry
s
Seria szerokich znaków, które inicjują ciąg. char16
n
Liczba określająca długość ciągu.
Uwagi
Jeśli wydajność jest krytyczna i kontrolujesz okres istnienia ciągu źródłowego, możesz użyć metody Platform::StringReference zamiast ciągu.
Przykład
String^ s = L"Hello!";
String::ToString
String
Zwraca obiekt, którego wartość jest taka sama jak bieżący ciąg.
Składnia
String^ String::ToString();
Wartość zwracana
String
Obiekt, którego wartość jest taka sama jak bieżący ciąg.