Freigeben über


CSimpleStringT::ReleaseBuffer

Versionssteuerelement des Puffers durch GetBuffer zugeordnet.

void ReleaseBuffer( 
   int nNewLength = -1 
);

Parameter

  • nNewLength
    Die neue Länge der Zeichenfolge in Zeichen, ein abschließendes NULL-Zeichen Zählen. Wenn die Zeichenfolge die beendete NULL ist, legt der Standardwert -1 die CSimpleStringT Größe auf die aktuelle Länge der Zeichenfolge fest.

Hinweise

Rufen Sie diese Methode auf, um den Puffer des String-Objekts oben neu belegen oder freizugeben. Wenn Sie wissen, dass die Zeichenfolge im Puffer die beendete NULL ist, können Sie das nNewLength-Argument weglassen. Wenn die Zeichenfolge nicht NULL beendet ist, verwendet nNewLength, seine Länge anzugeben. Die Adresse, die von GetBuffer zurückgegeben wird, ist nach dem Aufruf von ReleaseBuffer oder zu einem anderen CSimpleStringT Operation ungültig.

Beispiel

Das folgende Beispiel veranschaulicht die Verwendung von CSimpleStringT::ReleaseBuffer.

const int bufferSize = 1024;
CSimpleString s(_T("abc"), pMgr);

LPTSTR p = s.GetBuffer(bufferSize);
_tcscpy_s(p, bufferSize , _T("abc"));   // use the buffer directly
ASSERT(s.GetLength() == 3); // String length = 3
s.ReleaseBuffer();  // Surplus memory released, p is now invalid.
ASSERT(s.GetLength() == 3); // Length still 3

Anforderungen

Header: atlsimpstr.h

Siehe auch

Referenz

CSimpleStringT Class