您的位置首页百科问答

cstring getbuffer后必须要releasebuffer吗

cstring getbuffer后必须要releasebuffer吗

的有关信息介绍如下:

cstring getbuffer后必须要releasebuffer吗

The GetBuffer and ReleaseBuffer memberfunctions allow you to gain access to the internal character buffer of aCString object and modify it directly. Call GetBuffer for a CString object andspecify the length of the buffer you require. Use the pointer returned byGetBuffer to write characters directly into the CString object. If you use the pointer returned byGetBuffer to change the string contents, you must call ReleaseBuffer beforeusing any other CSimpleStringT member methods. Call ReleaseBuffer for the CString objectto update all the internal CString state information, such as the length of thestring. After modifying a CString object's contents directly, you must call ReleaseBufferbefore calling any other CString member functions. 从MSDN的描述中可以知道,GetBuffer让我们获得CString对象字符内存的操作权,这样就可以操作CString对象了。但修改CString对象后,对象的状态信息并没有更新,于是便有了ReleaseBuffer。如果你之后需要继续使用该CString对象,就需要调用ReleaseBuffer。