Platform::String 클래스
텍스트를 나타내는 데 사용되는 유니코드 문자의 순차적인 컬렉션을 나타냅니다. 자세한 내용 및 예제는 문자열을 참조 하세요.
구문
public ref class String sealed : Object,
IDisposable,
IEquatable,
IPrintable
반복기
String 클래스의 멤버가 아닌 두 반복기 함수를 함수 템플릿과 함께 std::for_each
사용하여 String 개체의 문자를 열거할 수 있습니다.
멤버 | 설명 |
---|---|
const char16* begin(String^ s) |
지정된 String 개체의 시작 부분에 대한 포인터를 반환합니다. |
const char16* end(String^ s) |
지정된 String 개체의 끝을 지나는 포인터를 반환합니다. |
멤버
String 클래스는 Object 및 IDisposable, IEquatable 및 IPrintable 인터페이스에서 상속합니다.
String 클래스에는 다음 형식의 멤버도 있습니다.
생성자
멤버 | 설명 |
---|---|
String::String | String 클래스의 새 인스턴스를 초기화합니다. |
메서드
String 클래스는 Platform::Object Class의 Equals(), Finalize(), GetHashCode(), GetType(), MemberwiseClose() 및 ToString() 메서드를 상속합니다. String에는 다음 메서드도 있습니다.
메서드 | 설명 |
---|---|
String::Begin | 현재 문자열의 시작 부분에 대한 포인터를 반환합니다. |
String::CompareOrdinal | 개체가 나타내는 두 문자열 값에서 해당 문자의 숫자 값을 계산하여 두 String 개체를 비교합니다. |
String::Concat | 두 String 개체의 값을 연결합니다. |
String::D ata | 현재 문자열의 시작 부분에 대한 포인터를 반환합니다. |
String::D spose | 리소스를 확보하거나 해제합니다. |
String::End | 현재 문자열의 끝을 지나는 포인터를 반환합니다. |
String::Equals | 지정된 개체가 현재 개체와 같은지 여부를 나타냅니다. |
String::GetHashCode | 이 인스턴스의 해시 코드를 반환합니다. |
String::IsEmpty | 현재 String 개체가 비어 있는지 여부를 나타냅니다. |
String::IsFastPass | 현재 String 개체가 빠른 통과 작업에 참여하고 있는지 여부를 나타냅니다. 빠른 전달 작업에서는 참조 횟수가 일시 중단됩니다. |
String::Length | 현재 String 개체의 길이를 검색합니다. |
String::ToString | 현재 문자열과 같은 값을 갖는 String 개체를 반환합니다. |
연산자
String 클래스에는 다음과 같은 연산자가 있습니다.
멤버 | 설명 |
---|---|
String::operator== 연산자 | 지정된 두 String 개체의 값이 같은지 여부를 나타냅니다. |
operator+ Operator | 두 String 개체를 새 String 개체에 연결합니다. |
String::operator> 연산자 | String 개체 값이 두 번째 String 개체 값보다 큰지 여부를 나타냅니다. |
String::operator>= 연산자 | String 개체 값이 두 번째 String 개체 값보다 크거나 같은지 여부를 나타냅니다. |
String::operator!= 연산자 | 지정된 두 String 개체의 값이 서로 다른지 여부를 나타냅니다. |
String::operator< 연산자 | String 개체 값이 두 번째 String 개체 값보다 작은지 여부를 나타냅니다. |
요구 사항
지원되는 최소 클라이언트: Windows 8
지원되는 최소 서버: Windows Server 2012
네임스페이스: Platform
헤더 vccorlib.h(기본적으로 포함)
String::Begin 메서드
현재 문자열의 시작 부분에 대한 포인터를 반환합니다.
구문
char16* Begin();
Return Value
현재 문자열의 시작 부분에 대한 포인터입니다.
String::CompareOrdinal 메서드
개체가 나타내는 두 String
문자열 값에 있는 해당 문자의 숫자 값을 평가하여 두 개체를 비교하는 정적 메서드입니다.
구문
static int CompareOrdinal( String^ str1, String^ str2 );
매개 변수
str1
첫 번째 String 개체입니다.
str2
두 번째 String 개체입니다.
Return Value
두 비교 대상 간의 어휘 관계를 나타내는 정수입니다. 다음 표에서는 가능한 반환 값을 보여 줍니다.
값 | 조건 |
---|---|
-1 | str1 가 str2 보다 작은 경우 |
0 | str1 이 str2 와 같은 경우 |
1 | str1 가 str2 보다 큰 경우 |
String::Concat 메서드
두 String 개체의 값을 연결합니다.
구문
String^ Concat( String^ str1, String^ str2);
매개 변수
str1
첫 번째 String 개체 또는 null
입니다.
str2
두 번째 String 개체 또는 null
입니다.
Return Value
str1
값과 str2
값의 연결을 값으로 하는 새로운 String^ 개체입니다.
str1
가 null
이고 str2
이l 아니면 str1
가 반환됩니다. str2
가 null
이고 str1
이l 아니면 str2
가 반환됩니다. str1
과 str2
가 모두 null
이면 빈 문자열(L"")이 반환됩니다.
String::Data 메서드
개체의 데이터 버퍼 시작에 대한 포인터를 char16
(wchar_t
) 요소의 C 스타일 배열로 반환합니다.
구문
const char16* Data();
Return Value
유니코드 문자 배열의 const char16
시작 부분에 대한 wchar_t
포인터입니다(char16
형식 정의).
설명
이 메서드를 사용하여 Platform::String^
에서 wchar_t*
로 변환합니다. String
개체가 범위를 벗어나는 경우 데이터 포인터의 유효성이 더 이상 보장되지 않습니다. 원래 String
개체의 수명을 초과하여 데이터를 저장하려면 wcscpy_s 사용하여 직접 할당한 메모리에 배열을 복사합니다.
String::Dispose 메서드
리소스를 확보하거나 해제합니다.
구문
virtual override void Dispose();
String::End 메서드
현재 문자열의 끝을 지나는 포인터를 반환합니다.
구문
char16* End();
Return Value
현재 문자열의 끝을 지나는 포인터입니다.
설명
End()는 Begin() + Length를 반환합니다.
String::Equals 메서드
지정된 String의 값이 현재 개체와 동일한지 여부를 나타냅니다.
구문
bool String::Equals(Object^ str);
bool String::Equals(String^ str);
매개 변수
str
비교할 개체입니다.
Return Value
true
현재 개체와 같으면 str
.이고, false
그렇지 않으면 .입니다.
설명
이 메서드는 정적 문자열::CompareOrdinal과 동일합니다. 첫 번째 오버로드에서는 str
매개 변수가 String^ 개체로 캐스팅될 수 있어야 합니다.
String::GetHashCode 메서드
이 인스턴스의 해시 코드를 반환합니다.
구문
virtual override int GetHashCode();
Return Value
이 인스턴스의 해시 코드입니다.
String::IsEmpty 메서드
현재 String 개체가 비어 있는지 여부를 나타냅니다.
구문
bool IsEmpty();
Return Value
true
현재 String
개체가 null 이거나 빈 문자열(L"")이면 이고, false
그렇지 않으면 .
String::IsFastPass 메서드
현재 String 개체가 빠른 통과 작업에 참여하고 있는지 여부를 나타냅니다. 빠른 전달 작업에서는 참조 횟수가 일시 중단됩니다.
구문
bool IsFastPass();
Return Value
true
현재 개체가 빠른 과거이면 false
그렇지 않으면 .입니다.
설명
참조 횟수가 계산된 개체가 매개 변수이고, 호출된 함수가 이 개체만 읽는 함수에 대한 호출인 경우 컴파일러는 참조 횟수를 안전하게 일시 중단하고 호출 성능을 향상시킬 수 있습니다. 코드에서 이 속성으로 할 수 있는 유용한 일은 없습니다. 시스템에서 모든 세부 사항을 처리합니다.
String::Length 메서드
현재 String
개체의 문자 수를 검색합니다.
구문
unsigned int Length();
Return Value
현재 String
개체의 문자 수입니다.
설명
문자가 없는 String의 길이는 0입니다. 다음 String의 길이는 5입니다.
String^ str = "Hello";
int len = str->Length(); //len = 5
String::D ata에서 반환된 문자 배열에는 종료 NULL 또는 '\0'인 하나의 추가 문자가 있습니다. 이 문자의 길이도 2바이트입니다.
String::operator+ 연산자
두 String 개체를 새 String 개체에 연결합니다.
구문
bool String::operator+( String^ str1, String^ str2);
매개 변수
str1
첫 번째 String
개체입니다.
str2
내용이 String
에 추가될 두 번째str1
개체입니다.
Return Value
true
str1이 str2와 같으면 이고, false
그렇지 않으면 .
설명
이 연산자는 두 피연산자의 데이터가 들어 있는 String^
개체를 만듭니다. 매우 높은 성능이 중요하지 않은 경우 편의를 위해 이를 사용합니다. 함수에서 "+
"를 몇 번 호출하는 것은 그렇게 눈에 띄지 않지만 대행 개체나 텍스트 데이터를 연속해서 조작하는 경우 표준 C++ 매커니즘과 형식을 사용하십시오.
String::operator== 연산자
지정된 두 String 개체의 텍스트 값이 같은지 여부를 나타냅니다.
구문
bool String::operator==( String^ str1, String^ str2);
매개 변수
str1
비교할 첫 번째 String
개체입니다.
str2
비교할 두 번째 String
개체입니다.
Return Value
true
의 str1
내용이 같으면 이고 str2
, false
그렇지 않으면 .
설명
이 연산자는 String::CompareOrdinal과 동일합니다.
String::operator>
한 String
개체의 값이 두 번째 String
개체의 값보다 큰지 여부를 나타냅니다.
구문
bool String::operator>( String^ str1, String^ str2);
매개 변수
str1
첫 번째 String
개체입니다.
str2
두 번째 String
개체입니다.
Return Value
str1
의 값이 str2
의 값보다 크면 true
이고, 그렇지 않으면 false
입니다.
설명
이 연산자는 String::CompareOrdinal을 명시적으로 호출하고 0보다 큰 결과를 가져오는 것과 같습니다.
String::operator>=
한 String
개체의 값이 두 번째 String
개체의 값보다 크거나 같은지 여부를 나타냅니다.
구문
bool String::operator>=( String^ str1, String^ str2);
매개 변수
str1
첫 번째 String
개체입니다.
str2
두 번째 String
개체입니다.
Return Value
str1
의 값이 str2
의 값보다 크거나 같으면 true
이고, 그렇지 않으면 false
입니다.
String::operator!=
지정된 String
두 개체의 값이 서로 다른지 여부를 나타냅니다.
구문
bool String::operator!=( String^ str1, String^ str2);
매개 변수
str1
비교할 첫 번째 String
개체입니다.
str2
비교할 두 번째 String
개체입니다.
Return Value
true
가 str1
와 다르면 str2
이고, 그러지 않으면 false
입니다.
String::operator<
한 String
개체의 값이 두 번째 String
개체의 값보다 작은지 여부를 나타냅니다.
구문
bool String::operator<( String^ str1, String^ str2);
매개 변수
str1
첫 번째 String
개체입니다.
str2
두 번째 String
개체입니다.
Return Value
true
str1 값이 str2 값보다 작으면 이고, false
그렇지 않으면 .
String::String 생성자
입력 문자열 데이터의 복사본을 String
사용하여 클래스의 새 인스턴스를 초기화합니다.
구문
String();
String(char16* s);
String(char16* s, unsigned int n);
매개 변수
s
문자열을 초기화하는 일련의 와이드 문자입니다. char16
n
문자열의 길이를 지정하는 숫자입니다.
설명
성능이 중요하고 원본 문자열의 수명을 제어하는 경우 String 대신 Platform::StringReference를 사용할 수 있습니다.
예시
String^ s = L"Hello!";
String::ToString
String
값이 현재 문자열과 동일한 개체를 반환합니다.
구문
String^ String::ToString();
Return Value
String
값이 현재 문자열과 동일한 개체입니다.