CSimpleStringT::ReleaseBuffer
GetBufferで割り当てられたバッファーの制御の解放。
void ReleaseBuffer(
int nNewLength = -1
);
パラメーター
- nNewLength
null 終端文字は含まれません。リテラル文字列の新しい長さ。 文字列の終端が null の場合、既定値は -1 文字列の現在の長さに CSimpleStringT のサイズを設定します。
解説
文字列オブジェクトのバッファーを再割り当てするか、解放します。ためにこのメソッドを呼び出します。 バッファーの文字列は、終端が null であることがわかっている場合 nNewLength の引数を省略できます。 アプリケーションで文字列が null の終了が、長さを指定するに nNewLength を使用します。 GetBuffer によって返されたアドレスは ReleaseBuffer か CSimpleStringT の他の操作の呼び出し後に無効です。
使用例
次の例は、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
必要条件
ヘッダー : atlsimpstr.h