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
String::BeginString::Begin Retorna um ponteiro para o início da cadeia de caracteres atual.Returns a pointer to the beginning of the current string.
String::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.
String::ConcatString::Concat Concatena os valores de dois objetos String.Concatenates the values of two String objects.
String::DataString::Data Retorna um ponteiro para o início da cadeia de caracteres atual.Returns a pointer to the beginning of the current string.
String::DisposeString::Dispose Libera recursos.Frees or releases resources.
String::EndString::End Retorna um ponteiro após o fim da cadeia de caracteres atual.Returns a pointer past the end of the current string.
String::EqualsString::Equals indica se o objeto especificado é igual ao objeto atual.Indicates whether the specified object is equal to the current object.
String::GetHashCodeString::GetHashCode Retorna o código hash para essa instância.Returns the hash code for this instance.
String::IsEmptyString::IsEmpty Indica se o objeto String atual está vazio.Indicates whether the current String object is empty.
String::IsFastPassString::IsFastPass Indica se o objeto String atual está participando de uma passagem rápida operação.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.
String::LengthString::Length Recupera o comprimento do objeto String atual.Retrieves the length of the current String object.
String::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 de cadeia de caracteres tem os seguintes operadores.The String class has the following operators.

MembroMember DescriçãoDescription
String:: Operator = = operadorString::operator== Operator Indica se dois objetos String especificados têm o mesmo valor.Indicates whether two specifed 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.
String:: Operator > operadorString::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 > = operadorString::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.
String:: Operator! = operadorString::operator!= Operator Indica se dois objetos String especificados têm valores diferentes.Indicates whether two specifed String objects have different values.
String:: Operator < operadorString::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 de retornoReturn 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

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.

SintaxeSyntax

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 de retornoReturn 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 de retornoReturn 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 está null e str2 não for, str1 será retornado.If str1 is null and str2 is not, str1 is returned. Se str2 está 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.

Método String:: dataString::Data Method

Retorna um ponteiro para o início do buffer de dados do objeto como uma matriz de estilo C de elementos char16 (wchar_t).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 de retornoReturn 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 de original String do objeto, use wcscpy_s para copiar a matriz na memória que você mesmo atribuiu.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.

Método String:: DisposeString::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 de retornoReturn 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 ser comparado.The object to compare.

Valor de retornoReturn 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 a String:: CompareOrdinal.This method is equivalent to the 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 essa instância.Returns the hash code for this instance.

SintaxeSyntax

virtual override int GetHashCode();

Valor de retornoReturn 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 de retornoReturn Value

true se o objeto String atual for null 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 String atual está participando de uma passagem rápida operação.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 de retornoReturn Value

true se o objeto String atual for fast-past; 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 de cadeia de caracteres atual.Retrieves the number of characters in the current String object.

SintaxeSyntax

unsigned int Length();

Valor de retornoReturn Value

O número de caracteres no objeto de cadeia de caracteres atual.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 String:: data tem um caractere adicional, que é o NULL 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 duas cadeia de caracteres objetos em uma nova cadeia de caracteres objeto.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 de retornoReturn 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.

String:: Operator = = operadorString::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 de retornoReturn 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.

String::operator>String::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.

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 de retornoReturn 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.

String::operator>=String::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.

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 de retornoReturn 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.

String:: Operator! =String::operator!=

Indica se dois objetos String especificados têm valores diferentes.Indicates whether two specifed 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 de retornoReturn Value

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

String::operator<String::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.

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 de retornoReturn 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 classe String com uma cópia dos dados de 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

ss
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ê pode usar 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!";

String::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.

SintaxeSyntax

String^ String::ToString();

Valor de retornoReturn Value

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

Consulte tambémSee Also

Namespace PlatformPlatform namespace