Classe Platform::StringPlatform::String Class

Representa uma coleção sequencial de caracteres Unicode que é usada para representar o texto.Represents a sequential collection of Unicode characters that is used to represent text. Para obter mais informações e exemplos, consulte cadeias de caracteres.For more information and examples, see Strings.

SintaxeSyntax

public ref class String sealed : Object,
    IDisposable,
    IEquatable,
    IPrintable

IteratorsIterators

Duas funções de iterador, que não são membros da classe String, podem ser usadas com a função modelo std::for_each para enumerar os caracteres em um objeto String.Two iterator functions, which are not members of the String class, can be used with the std::for_each template function to enumerate the characters in a String object.

MembroMember DescriçãoDescription
const char16* begin(String^ s) Retorna um ponteiro para o início do objeto String especificado.Returns a pointer to the beginning of the specified String object.
const char16* end(String^ s) Retorna um ponteiro após o fim do objeto String especificado.Returns a pointer past the end of the specified String object.

MembrosMembers

A classe String herda de Object das interfaces IDisposable, IEquatable e IPrintable.The String class inherits from Object, and the IDisposable, IEquatable, and IPrintable interfaces.

A classe String também tem os tipos de membros a seguir.The String class also has the following types of members.

ConstrutoresConstructors

MembroMember DescriçãoDescription
String:: StringString::String Inicializa uma nova instância da classe String.Initializes a new instance of the String class.

MétodosMethods

A classe String herda os métodos Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose() e ToString() da Platform::Object Class.The String class inherits the Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose(), and ToString() methods from the Platform::Object Class. String também tem os métodos a seguir.String also has the following methods.

MétodoMethod DescriçãoDescription
Cadeia de caracteres:: inícioString::Begin Retorna um ponteiro para o início da cadeia de caracteres atual.Returns a pointer to the beginning of the current string.
Cadeia de caracteres:: CompareOrdinalString::CompareOrdinal Compara dois objetos String avaliando os valores numéricos dos caracteres correspondentes nos dois valores de cadeias de caracteres representados pelos objetos.Compares two String objects by evaluating the numeric values of the corresponding characters in the two string values represented by the objects.
Cadeia de caracteres:: ConcatString::Concat Concatena os valores de dois objetos String.Concatenates the values of two String objects.
Cadeia de caracteres::D ATAString::Data Retorna um ponteiro para o início da cadeia de caracteres atual.Returns a pointer to the beginning of the current string.
Cadeia de caracteres::D isposeString::Dispose Libera recursos.Frees or releases resources.
Cadeia de caracteres:: fimString::End Retorna um ponteiro após o fim da cadeia de caracteres atual.Returns a pointer past the end of the current string.
Cadeia de caracteres:: EqualsString::Equals indica se o objeto especificado é igual ao objeto atual.Indicates whether the specified object is equal to the current object.
Cadeia de caracteres:: GetHashCodeString::GetHashCode Retorna o código hash para a instância.Returns the hash code for this instance.
Cadeia de caracteres:: IsEmptyString::IsEmpty Indica se o objeto String atual está vazio.Indicates whether the current String object is empty.
Cadeia de caracteres:: IsFastPassString::IsFastPass Indica se o objeto de cadeia de caracteres atual está participando de uma operação de passagem rápida .Indicates whether the current String object is participating in a fast pass operation. Em uma operação de passagem rápida, a contagem de referência é suspensa.In a fast pass operation, reference counting is suspended.
Cadeia de caracteres:: comprimentoString::Length Recupera o comprimento do objeto String atual.Retrieves the length of the current String object.
Cadeia de caracteres:: ToStringString::ToString Retorna um objeto String cujo valor é igual ao da cadeia de caracteres atual.Returns a String object whose value is the same as the current string.

OperadoresOperators

A classe String tem os operadores a seguir.The String class has the following operators.

MembroMember DescriçãoDescription
Operador String:: Operator = =String::operator== Operator Indica se dois objetos de cadeia de caracteres especificados têm o mesmo valor.Indicates whether two specified String objects have the same value.
operador+ Operadoroperator+ Operator Concatena dois objetos de cadeia de caracteres em um novo objeto de cadeia de caracteres.Concatenates two String objects into a new String object.
Operador String:: Operator>String::operator> Operator Indica se o valor de um objeto String é maior que o valor de um segundo objeto String.Indicates whether the value of one String object is greater than the value of a second String object.
String:: Operator>= OperatorString::operator>= Operator Indica se o valor de um objeto String é maior ou igual ao valor de um segundo objeto String.Indicates whether the value of one String object is greater than or equal to the value of a second String object.
Operador String:: Operator! =String::operator!= Operator Indica se dois objetos de cadeia de caracteres especificados têm valores diferentes.Indicates whether two specified String objects have different values.
Operador String:: Operator<String::operator< Operator Indica se o valor de um objeto String é menor que o valor de um segundo objeto String.Indicates whether the value of one String object is less than the value of a second String object.

RequisitosRequirements

Mínimo de cliente com suporte: Windows 8Minimum supported client: Windows 8

Mínimo de servidor com suporte: Windows Server 2012Minimum supported server: Windows Server 2012

Namespace: PlatformNamespace: Platform

Cabeçalho vccorlib.h (incluído por padrão)Header vccorlib.h (included by default)

Método String:: BeginString::Begin Method

Retorna um ponteiro para o início da cadeia de caracteres atual.Returns a pointer to the beginning of the current string.

SintaxeSyntax

char16* Begin();

Valor retornadoReturn Value

Um ponteiro para o início da cadeia de caracteres atual.A pointer to the beginning of the current string.

Método String:: CompareOrdinalString::CompareOrdinal Method

Método estático que compara dois String objetos avaliando os valores numéricos dos caracteres correspondentes nos dois valores de cadeia de caracteres representados pelos objetos.Static method that compares two String objects by evaluating the numeric values of the corresponding characters in the two string values represented by the objects.

SintaxeSyntax

static int CompareOrdinal( String^ str1, String^ str2 );

parâmetrosParameters

str1str1
O primeiro objeto String.The first String object.

str2str2
O segundo objeto String.The second String object.

Valor retornadoReturn Value

Um número inteiro que indica a relação lexical entre os dois termos de comparação.An integer that indicates the lexical relationship between the two comparands. A tabela a seguir lista os possíveis valores de retorno.The following table lists the possible return values.

ValorValue CondiçãoCondition
-1-1 str1 é menor que str2.str1 is less than str2.
00 str1 é igual a str2.str1 is equals str2.
11 str1 é maior que str2.str1 is greater than str2.

Método String:: ConcatString::Concat Method

Concatena os valores de dois objetos String.Concatenates the values of two String objects.

SintaxeSyntax

String^ Concat( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String ou null.The first String object, or null.

str2str2
O segundo objeto String ou null.The second String object, or null.

Valor retornadoReturn Value

Um novo objeto String^ cujo valor é a concatenação dos valores de str1 e str2.A new String^ object whose value is the concatenation of the values of str1 and str2.

Se str1 for null e str2 não for, str1 será retornado.If str1 is null and str2 is not, str1 is returned. Se str2 for null e str1 não for, str2 será retornado.If str2 is null and str1 is not, str2 is returned. Se str1 e str2 forem ambos null, a cadeia de caracteres vazia (L"") será retornada.If str1 and str2 are both null, the empty string (L"") is returned.

Cadeia de caracteres::D método do ATAString::Data Method

Retorna um ponteiro para o início do buffer de dados do objeto como uma matriz em estilo C de char16 wchar_t elementos ().Returns a pointer to the beginning of the object's data buffer as a C-style array of char16 (wchar_t) elements.

SintaxeSyntax

const char16* Data();

Valor retornadoReturn Value

Um ponteiro para o início de uma const char16 matriz de caracteres Unicode ( char16 é um typedef para wchar_t ).A pointer to the beginning of a const char16 array of Unicode characters (char16 is a typedef for wchar_t).

ComentáriosRemarks

Use este método para converter de Platform::String^ em wchar_t*.Use this method to convert from Platform::String^ to wchar_t*. Quando o objeto String sai do escopo, não há mais garantia de que ponteiro Dados seja válido.When the String object goes out of scope, the Data pointer is no longer guaranteed to be valid. Para armazenar os dados além do tempo de vida do String objeto original, use wcscpy_s para copiar a matriz na memória que você mesmo alocou.To store the data beyond the lifetime of the original String object, use wcscpy_s to copy the array into memory that you have allocated yourself.

Cadeia de caracteres::D método isposeString::Dispose Method

Libera recursos.Frees or releases resources.

SintaxeSyntax

virtual override void Dispose();

Método String:: EndString::End Method

Retorna um ponteiro após o fim da cadeia de caracteres atual.Returns a pointer past the end of the current string.

SintaxeSyntax

char16* End();

Valor retornadoReturn Value

Um ponteiro após o fim da cadeia de caracteres atual.A pointer to past the end of the current string.

ComentáriosRemarks

End () retorna Begin () + Length.End() returns Begin() + Length.

Método String:: EqualsString::Equals Method

Indica se a cadeia de caracteres especificada tem o mesmo valor que o objeto atual.Indicates whether the specified String has the same value as the current object.

SintaxeSyntax

bool String::Equals(Object^ str);
bool String::Equals(String^ str);

parâmetrosParameters

strstr
O objeto a comparar.The object to compare.

Valor retornadoReturn Value

true Se str for igual ao objeto atual; caso contrário, false .true if str is equal to the current object; otherwise, false.

ComentáriosRemarks

Esse método é equivalente à cadeia de caracteres estática:: CompareOrdinal.This method is equivalent to the static String::CompareOrdinal. Na primeira sobrecarga, é esperado que o parâmetro str possa ser convertido em um objeto String^.In the first overload, it is expected the str parameter can be cast to a String^ object.

Método String:: GetHashCodeString::GetHashCode Method

Retorna o código hash para a instância.Returns the hash code for this instance.

SintaxeSyntax

virtual override int GetHashCode();

Valor retornadoReturn Value

O código hash para essa instância.The hash code for this instance.

Método String:: IsEmptyString::IsEmpty Method

Indica se o objeto String atual está vazio.Indicates whether the current String object is empty.

SintaxeSyntax

bool IsEmpty();

Valor retornadoReturn Value

true Se o String objeto atual for nulo ou a cadeia de caracteres vazia (L ""); caso contrário, false .true if the current String object is null or the empty string (L""); otherwise, false.

Método String:: IsFastPassString::IsFastPass Method

Indica se o objeto de cadeia de caracteres atual está participando de uma operação de passagem rápida .Indicates whether the current String object is participating in a fast pass operation. Em uma operação de passagem rápida, a contagem de referência é suspensa.In a fast pass operation, reference counting is suspended.

SintaxeSyntax

bool IsFastPass();

Valor retornadoReturn Value

true Se o String objeto atual for rápido; caso contrário, false .true if the current String object is fast-past; otherwise, false.

ComentáriosRemarks

Em uma chamada à função em que um objeto contado por referência é um parâmetro e a função chamada somente lê esse objeto, o compilador pode suspender com segurança a contagem de referência e aprimorar o desempenho de chamada.In a call to a function where a reference-counted object is a parameter, and the called function only reads that object, the compiler can safely suspend reference counting and improve calling performance. Não há nada útil que seu código pode fazer com essa propriedade.There is nothing useful that your code can do with this property. O sistema manipula todos os detalhes.The system handles all the details.

Método String:: lengthString::Length Method

Recupera o número de caracteres no objeto atual String .Retrieves the number of characters in the current String object.

SintaxeSyntax

unsigned int Length();

Valor retornadoReturn Value

O número de caracteres no objeto atual String .The number of characters in the current String object.

ComentáriosRemarks

O comprimento de uma cadeia de caracteres sem caracteres é zero.The length of a String with no characters is zero. O comprimento da seguinte cadeia de caracteres é 5:The length of the following string is 5:

String^ str = "Hello";
int len = str->Length(); //len = 5

A matriz de caracteres retornada pela cadeia de caracteres::D o ATA tem um caractere adicional, que é o nulo de terminação ou ' \ 0 '.The character array returned by the String::Data has one additional character, which is the terminating NULL or '\0'. Esse caractere também tem dois bytes de tamanho.This character is also two bytes long.

Operador String:: Operator +String::operator+ Operator

Concatena dois objetos de cadeia de caracteres em um novo objeto de cadeia de caracteres .Concatenates two String objects into a new String object.

SintaxeSyntax

bool String::operator+( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String.The first String object.

str2str2
O segundo objeto String , cujo conteúdo será acrescentado a str1.The second String object, whose contents will be appended to str1.

Valor retornadoReturn Value

true Se str1 for igual a str2; caso contrário, false .true if str1 is equal to str2; otherwise, false.

ComentáriosRemarks

O operador cria um objeto String^ que contém os dados dos dois operandos.This operator creates a String^ object that contains the data from the two operands. Use-o de acordo com sua conveniência quando o desempenho extremo não for crítico.Use it for convenience when extreme performance is not critical. Algumas chamadas para “+” em uma função provavelmente não serão visíveis, mas se você estiver manipulando objetos grandes ou dados de texto em um loop estreito, use os mecanismos e os tipos de C++ padrão.A few calls to "+" in a function will probably not be noticeable, but if you are manipulating large objects or text data in a tight loop, then use the standard C++ mechanisms and types.

Operador String:: Operator = =String::operator== Operator

Indica se dois objetos de cadeia de caracteres especificados têm o mesmo valor de texto.Indicates whether two specified String objects have the same text value.

SintaxeSyntax

bool String::operator==( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String a ser comparado.The first String object to compare.

str2str2
O segundo objeto String a ser comparado.The second String object to compare.

Valor retornadoReturn Value

true Se o conteúdo de str1 for igual a str2 ; caso contrário, false .true if the contents of str1 are equal to str2; otherwise, false.

ComentáriosRemarks

Esse operador é equivalente a String:: CompareOrdinal.This operator is equivalent to String::CompareOrdinal.

Operador String::>String::operator>

Indica se o valor de um String objeto é maior que o valor de um segundo String objeto.Indicates whether the value of one String object is greater than the value of a second String object.

SintaxeSyntax

bool String::operator>( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String.The first String object.

str2str2
O segundo objeto String.The second String object.

Valor retornadoReturn Value

true Se o valor de str1 for maior que o valor de str2 ; caso contrário, false .true if the value of str1 is greater than the value of str2; otherwise, false.

ComentáriosRemarks

Esse operador é equivalente a chamar explicitamente String:: CompareOrdinal e obter um resultado maior que zero.This operator is equivalent to explicitly calling String::CompareOrdinal and getting a result greater than zero.

Operador String::>=String::operator>=

Indica se o valor de um String objeto é maior ou igual ao valor de um segundo String objeto.Indicates whether the value of one String object is greater than or equal to the value of a second String object.

SintaxeSyntax

bool String::operator>=( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String.The first String object.

str2str2
O segundo objeto String.The second String object.

Valor retornadoReturn Value

true Se o valor de str1 for maior ou igual ao valor de str2 ; caso contrário, false .true if the value of str1 is greater than or equal to the value of str2; otherwise, false.

Cadeia de caracteres:: operador! =String::operator!=

Indica se dois String objetos especificados têm valores diferentes.Indicates whether two specified String objects have different values.

SintaxeSyntax

bool String::operator!=( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String a ser comparado.The first String object to compare.

str2str2
O segundo objeto String a ser comparado.The second String object to compare.

Valor retornadoReturn Value

true Se str1 não for igual a str2 ; caso contrário, false .true if str1 is not equal to str2; otherwise, false.

Operador String::<String::operator<

Indica se o valor de um String objeto é menor que o valor de um segundo String objeto.Indicates whether the value of one String object is less than the value of a second String object.

SintaxeSyntax

bool String::operator<( String^ str1, String^ str2);

parâmetrosParameters

str1str1
O primeiro objeto String.The first String object.

str2str2
O segundo objeto String.The second String object.

Valor retornadoReturn Value

true Se o valor de str1 for menor que o valor de str2; caso contrário, false .true if the value of str1 is less than the value of str2; otherwise, false.

Construtor String:: StringString::String Constructor

Inicializa uma nova instância da String classe com uma cópia dos dados da cadeia de caracteres de entrada.Initializes a new instance of the String class with a copy of the input string data.

SintaxeSyntax

String();
String(char16* s);
String(char16* s, unsigned int n);

parâmetrosParameters

&s
Uma série de caracteres largos que inicializam a cadeia de caracteres.A series of wide characters that initialize the string. char16char16

nn
Um número que especifica o comprimento da cadeia de caracteres.A number that specifies the length of the string.

ComentáriosRemarks

Se o desempenho for crítico e você controlar o tempo de vida da cadeia de caracteres de origem, você poderá usar Platform:: StringReference no lugar da cadeia de caracteres.If performance is critical and you control the lifetime of the source string, you can use Platform::StringReference in place of String.

ExemploExample

String^ s = L"Hello!";

Cadeia de caracteres:: ToStringString::ToString

Retorna um String objeto cujo valor é igual à cadeia de caracteres atual.Returns a String object whose value is the same as the current string.

SintaxeSyntax

String^ String::ToString();

Valor retornadoReturn Value

Um String objeto cujo valor é igual à cadeia de caracteres atual.A String object whose value is the same as the current string.

Confira tambémSee also

Namespace de plataformaPlatform namespace