Dela via


HString-klass

En hjälpklass för att hantera livslängden för en HSTRING med hjälp av RAII-mönstret.

Syntax

class HString;

Anmärkningar

Windows Runtime ger åtkomst till strängar via HSTRING-handtag . Klassen HString tillhandahåller bekvämlighetsfunktioner och operatorer för att förenkla användningen av HSTRING-handtag. Den här klassen kan hantera livslängden för den HSTRING som den äger via ett RAII-mönster.

Members

Offentliga konstruktorer

Namn Description
HString::HString Initierar en ny instans av HString klassen.
HString::~HString Förstör den aktuella instansen HString av klassen.

Offentliga metoder

Namn Description
HString::Attach Associerar det angivna HString objektet med det aktuella HString objektet.
HString::CopyTo Kopierar det aktuella HString objektet till ett HSTRING-objekt.
HString::D etach Kopplar bort det angivna HString objektet från dess underliggande värde.
HString::Get Hämtar värdet för det underliggande HSTRING-handtaget.
HString::GetAddressOf Hämtar en pekare till det underliggande HSTRING-handtaget.
HString::GetRawBuffer Hämtar en pekare till underliggande strängdata.
HString::IsValid Anger om det aktuella HString objektet är giltigt.
HString::MakeReference Skapar ett HStringReference objekt från en angiven strängparameter.
HString::Release Tar bort det underliggande strängvärdet och initierar det aktuella HString objektet till ett tomt värde.
HString::Set Anger värdet för det aktuella HString objektet till den angivna wide character-strängen eller HString parametern.

Offentliga operatörer

Namn Description
HString::operator= Flyttar värdet för ett annat HString objekt till det aktuella HString objektet.
HString::operator== Anger om de två parametrarna är lika med.
HString::operator!= Anger om de två parametrarna inte är lika med.
HString::operator< Anger om den första parametern är mindre än den andra parametern.

Arvshierarki

HString

Kravspecifikation

Rubrik: corewrappers.h

Namespace: Microsoft::WRL::Wrappers

HString::~HString

Förstör den aktuella instansen HString av klassen.

~HString() throw()

HString::Attach

Associerar det angivna HString objektet med det aktuella HString objektet.

void Attach(
       HSTRING hstr
       ) throw()

Parameterar

hstr
Ett befintligt HString objekt.

HString::CopyTo

Kopierar det aktuella HString objektet till ett HSTRING-objekt.

HRESULT CopyTo(
   _Out_ HSTRING *str
   ) const throw();

Parameterar

Str
HSTRING som tar emot kopian.

Anmärkningar

Den här metoden anropar funktionen WindowsDuplicateString .

HString::D etach

Kopplar bort det angivna HString objektet från dess underliggande värde.

HSTRING Detach() throw()

Returvärde

Det underliggande HString värdet innan åtgärden kopplas från startades.

HString::Get

Hämtar värdet för det underliggande HSTRING-handtaget.

HSTRING Get() const throw()

Returvärde

Värdet för det underliggande HSTRING-handtaget

HString::GetAddressOf

Hämtar en pekare till det underliggande HSTRING-handtaget.

HSTRING* GetAddressOf() throw()

Returvärde

En pekare till det underliggande HSTRING-handtaget.

Anmärkningar

Efter den här åtgärden förstörs strängvärdet för det underliggande HSTRING-handtaget.

HString::GetRawBuffer

Hämtar en pekare till underliggande strängdata.

const wchar_t* GetRawBuffer(unsigned int* length) const;

Parameterar

längd Pekare till en int variabel som tar emot datalängden.

Returvärde

En const pekare till underliggande strängdata.

HString::HString

Initierar en ny instans av HString klassen.

HString() throw();
HString(HString&& other) throw();

Parameterar

hstr
Ett HSTRING-handtag.

annan
Ett befintligt HString objekt.

Anmärkningar

Den första konstruktorn initierar ett nytt HString objekt som är tomt.

Den andra konstruktorn initierar ett nytt HString objekt till värdet för den befintliga andra parametern och förstör sedan den andra parametern.

HString::IsValid

Anger om det aktuella HString objektet är tomt eller inte.

bool IsValid() const throw()

Parameterar

trueom det aktuella HString objektet inte är tomt, annars . false

HString::MakeReference

Skapar ett HStringReference objekt från en angiven strängparameter.

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);

Parameterar

sizeDest
En mallparameter som anger målbuffertens HStringReference storlek.

Str
En referens till en sträng med många tecken.

Len
Den maximala längden på str-parameterbufferten som ska användas i den här åtgärden. Om parametern len inte har angetts används hela str-parametern .

Returvärde

Ett HStringReference objekt vars värde är detsamma som den angivna str-parametern .

HString::operator= Operator

Flyttar värdet för ett annat HString objekt till det aktuella HString objektet.

HString& operator=(HString&& other) throw()

Parameterar

annan
Ett befintligt HString objekt.

Anmärkningar

Värdet för det befintliga andra objektet kopieras till det aktuella HString objektet och sedan förstörs det andra objektet.

HString::operator== Operator

Anger om de två parametrarna är lika med.

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()

Parameterar

Lhs
Den första parametern som ska jämföras. lhs kan vara ett HString objekt eller HStringReference ett HSTRING-handtag.

Rhs
Den andra parametern att jämföra. rhs kan vara ett HString objekt eller HStringReference ett HSTRING-handtag.

Returvärde

trueom parametrarna lhs och rhs är lika; annars . false

HString::operator!= Operator

Anger om de två parametrarna inte är lika med.

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()

Parameterar

Lhs
Den första parametern som ska jämföras. lhs kan vara ett HString objekt eller HStringReference ett HSTRING-handtag.

Rhs
Den andra parametern att jämföra. rhs kan vara ett HString objekt eller HStringReference ett HSTRING-handtag.

Returvärde

trueom parametrarna lhs och rhs inte är lika; annars . false

HString::operator< Operatör

Anger om den första parametern är mindre än den andra parametern.

inline bool operator<(
    const HString& lhs,
    const HString& rhs) throw()

Parameterar

Lhs
Den första parametern som ska jämföras. lhs kan vara en referens till en HString.

Rhs
Den andra parametern att jämföra. rhs kan vara en referens till en HString.

Returvärde

trueom parametern lhs är mindre än parametern rhs; annars . false

HString::Release

Tar bort det underliggande strängvärdet och initierar det aktuella HString objektet till ett tomt värde.

void Release() throw()

HString::Set

Anger värdet för det aktuella HString objektet till den angivna wide character-strängen eller HString parametern.

HRESULT Set(
          const wchar_t* str) throw();
HRESULT Set(
          const wchar_t* str,
          unsigned int len
           ) throw();
HRESULT Set(
          const HSTRING& hstr
           ) throw();

Parameterar

Str
En sträng med många tecken.

Len
Den maximala längden på den str-parameter som har tilldelats det aktuella HString objektet.

hstr
Ett befintligt HString objekt.