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

要求

Header: atlsimpstr.h

请参见

参考

CSimpleStringT选件类