HString 클래스
RAII 패턴을 사용하여 HSTRING의 수명을 관리하기 위한 도우미 클래스입니다.
구문
class HString;
설명
Windows 런타임 HSTRING 핸들을 통해 문자열에 대한 액세스를 제공합니다. 이 클래스는 HString
HSTRING 핸들 사용을 간소화하는 편리한 함수 및 연산자를 제공합니다. 이 클래스는 RAII 패턴을 통해 소유하는 HSTRING의 수명을 처리할 수 있습니다.
멤버
공용 생성자
속성 | 설명 |
---|---|
HString::HString | HString 클래스의 새 인스턴스를 초기화합니다. |
HString::~HString | 클래스의 현재 인스턴스를 삭제합니다 HString . |
공용 메서드
이름 | 설명 |
---|---|
HString::Attach | 지정된 HString 개체를 현재 HString 개체와 연결합니다. |
HString::CopyTo | 현재 HString 개체를 HSTRING 개체에 복사합니다. |
HString::D etach | 지정된 HString 개체를 내부 값과 연결 해제합니다. |
HString::Get | 기본 HSTRING 핸들의 값을 검색합니다. |
HString::GetAddressOf | 기본 HSTRING 핸들에 대한 포인터를 검색합니다. |
HString::GetRawBuffer | 기본 문자열 데이터에 대한 포인터를 검색합니다. |
HString::IsValid | 현재 HString 개체가 유효한지 여부를 나타냅니다. |
HString::MakeReference | HStringReference 지정된 문자열 매개 변수에서 개체를 만듭니다. |
HString::Release | 기본 문자열 값을 삭제하고 현재 HString 개체를 빈 값으로 초기화합니다. |
HString::Set | 현재 HString 개체의 값을 지정된 와이드 문자열 또는 HString 매개 변수로 설정합니다. |
Public 연산자
속성 | 설명 |
---|---|
HString::operator= | 다른 HString 개체의 값을 현재 HString 개체로 이동합니다. |
HString::operator== | 두 매개 변수가 같은지 여부를 나타냅니다. |
HString::operator!= | 두 매개 변수가 같지 않은지 여부를 나타냅니다. |
HString::operator< |
첫 번째 매개 변수가 두 번째 매개 변수보다 작은지 여부를 나타냅니다. |
상속 계층 구조
HString
요구 사항
헤더: corewrappers.h
네임스페이스: Microsoft::WRL::Wrappers
HString::~HString
클래스의 현재 인스턴스를 삭제합니다 HString
.
~HString() throw()
HString::Attach
지정된 HString
개체를 현재 HString
개체와 연결합니다.
void Attach(
HSTRING hstr
) throw()
매개 변수
hstr
기존 HString
개체입니다.
HString::CopyTo
현재 HString
개체를 HSTRING 개체에 복사합니다.
HRESULT CopyTo(
_Out_ HSTRING *str
) const throw();
매개 변수
str
복사본을 받는 HSTRING입니다.
설명
이 메서드는 WindowsDuplicateString 함수를 호출합니다 .
HString::D etach
지정된 HString
개체를 내부 값과 연결 해제합니다.
HSTRING Detach() throw()
Return Value
분리 작업이 시작되기 전의 기본 HString
값입니다.
HString::Get
기본 HSTRING 핸들의 값을 검색합니다.
HSTRING Get() const throw()
Return Value
기본 HSTRING 핸들의 값입니다.
HString::GetAddressOf
기본 HSTRING 핸들에 대한 포인터를 검색합니다.
HSTRING* GetAddressOf() throw()
Return Value
기본 HSTRING 핸들에 대한 포인터입니다.
설명
이 작업 후에 기본 HSTRING 핸들의 문자열 값이 삭제됩니다.
HString::GetRawBuffer
기본 문자열 데이터에 대한 포인터를 검색합니다.
const wchar_t* GetRawBuffer(unsigned int* length) const;
매개 변수
길이 데이터 길이를 int
받는 변수에 대한 포인터입니다.
Return Value
const
기본 문자열 데이터에 대한 포인터입니다.
HString::HString
HString
클래스의 새 인스턴스를 초기화합니다.
HString() throw();
HString(HString&& other) throw();
매개 변수
hstr
HSTRING 핸들입니다.
기타
기존 HString
개체입니다.
설명
첫 번째 생성자는 비어 있는 새 HString
개체를 초기화합니다.
두 번째 생성자는 새 HString
개체를 기존 다른 매개 변수의 값으로 초기화한 다음 다른 매개 변수를 삭제합니다.
HString::IsValid
현재 HString
개체가 비어 있는지 여부를 나타냅니다.
bool IsValid() const throw()
매개 변수
true
현재 HString
개체가 비어 있지 않으면 .이고, false
그렇지 않으면 .입니다.
HString::MakeReference
HStringReference
지정된 문자열 매개 변수에서 개체를 만듭니다.
template<unsigned int sizeDest>
static HStringReference MakeReference(
wchar_t const (&str)[ sizeDest]);
template<unsigned int sizeDest>
static HStringReference MakeReference(
wchar_t const (&str)[sizeDest],
unsigned int len);
매개 변수
sizeDest
대상 HStringReference
버퍼의 크기를 지정하는 템플릿 매개 변수입니다.
str
와이드 문자 문자열에 대한 참조입니다.
렌
이 작업에 사용할 str 매개 변수 버퍼의 최대 길이입니다. len 매개 변수를 지정하지 않으면 전체 str 매개 변수가 사용됩니다.
Return Value
HStringReference
값이 지정된 str 매개 변수와 동일한 개체입니다.
HString::operator= 연산자
다른 HString
개체의 값을 현재 HString
개체로 이동합니다.
HString& operator=(HString&& other) throw()
매개 변수
기타
기존 HString
개체입니다.
설명
기존 다른 개체의 값이 현재 HString
개체에 복사된 다음 다른 개체가 제거됩니다.
HString::operator== 연산자
두 매개 변수가 같은지 여부를 나타냅니다.
inline bool operator==(
const HString& lhs,
const HString& rhs) throw()
inline bool operator==(
const HString& lhs,
const HStringReference& rhs) throw()
inline bool operator==(
const HStringReference& lhs,
const HString& rhs) throw()
inline bool operator==(
const HSTRING& lhs,
const HString& rhs) throw()
inline bool operator==(
const HString& lhs,
const HSTRING& rhs) throw()
매개 변수
lhs
비교할 첫 번째 매개 변수입니다. lhs는 HString
개체 또는 HStringReference
HSTRING 핸들일 수 있습니다.
rhs
비교할 두 번째 매개 변수입니다.rhs는 개체 HString
또는 HStringReference
HSTRING 핸들일 수 있습니다.
Return Value
true
lhs 및 rhs 매개 변수가 같으면 .이고, false
그렇지 않으면 .
HString::operator!= 연산자
두 매개 변수가 같지 않은지 여부를 나타냅니다.
inline bool operator!=( const HString& lhs,
const HString& rhs) throw()
inline bool operator!=( const HStringReference& lhs,
const HString& rhs) throw()
inline bool operator!=( const HString& lhs,
const HStringReference& rhs) throw()
inline bool operator!=( const HSTRING& lhs,
const HString& rhs) throw()
inline bool operator!=( const HString& lhs,
const HSTRING& rhs) throw()
매개 변수
lhs
비교할 첫 번째 매개 변수입니다. lhs는 HString
개체 또는 HStringReference
HSTRING 핸들일 수 있습니다.
rhs
비교할 두 번째 매개 변수입니다.rhs는 개체 HString
또는 HStringReference
HSTRING 핸들일 수 있습니다.
Return Value
true
lhs 및 rhs 매개 변수가 같지 않으면 .이고, false
그렇지 않으면 .
HString::operator<
연산자
첫 번째 매개 변수가 두 번째 매개 변수보다 작은지 여부를 나타냅니다.
inline bool operator<(
const HString& lhs,
const HString& rhs) throw()
매개 변수
lhs
비교할 첫 번째 매개 변수입니다. lhs는 .에 대한 참조 HString
일 수 있습니다.
rhs
비교할 두 번째 매개 변수입니다. rhs는 .에 대한 참조 HString
일 수 있습니다.
Return Value
true
lhs 매개 변수가 rhs 매개 변수보다 작으면 .이고, false
그렇지 않으면 .
HString::Release
기본 문자열 값을 삭제하고 현재 HString
개체를 빈 값으로 초기화합니다.
void Release() throw()
HString::Set
현재 HString
개체의 값을 지정된 와이드 문자열 또는 HString
매개 변수로 설정합니다.
HRESULT Set(
const wchar_t* str) throw();
HRESULT Set(
const wchar_t* str,
unsigned int len
) throw();
HRESULT Set(
const HSTRING& hstr
) throw();
매개 변수
str
와이드 문자열입니다.
렌
현재 개체에 할당된 str 매개 변수의 최대 길이 HString
입니다.
hstr
기존 HString
개체입니다.