#include </usr/src/ports/wxWidgets3.0/wxWidgets3.0-3.0.4-1.i686/src/wxWidgets-3.0.4/interface/wx/string.h>
This tiny class allows you to conveniently access the wxString internal buffer as a writable pointer without any risk of forgetting to restore the string to the usable state later.
For example, assuming you have a low-level OS function called "GetMeaningOfLifeAsString(char *)" returning the value in the provided buffer (which must be writable, of course) you might call it like this:
Note that the exact usage of this depends on whether or not wxUSE_STL is enabled. If wxUSE_STL is enabled, wxStringBuffer creates a separate empty character buffer, and if wxUSE_STL is disabled, it uses GetWriteBuf() from wxString, keeping the same buffer wxString uses intact. In other words, relying on wxStringBuffer containing the old wxString data is not a good idea if you want to build your program both with and without wxUSE_STL.
<>< =''>:</>&;&;< =''>\ </></>
Public Member Functions | |
| wxStringBuffer (const wxString &str, size_t len) | |
| Constructs a writable string buffer object associated with the given string and containing enough space for at least len characters. More... | |
| ~wxStringBuffer () | |
| Restores the string passed to the constructor to the usable state by calling wxString::UngetWriteBuf() on it. More... | |
| wxStringCharType * | operator wxStringCharType * () |
| Returns the writable pointer to a buffer of the size at least equal to the length specified in the constructor. More... | |
| wxStringBuffer::wxStringBuffer | ( | const wxString & | str, |
| size_t | len | ||
| ) |
Constructs a writable string buffer object associated with the given string and containing enough space for at least len characters.
Basically, this is equivalent to calling wxString::GetWriteBuf() and saving the result.
| wxStringBuffer::~wxStringBuffer | ( | ) |
Restores the string passed to the constructor to the usable state by calling wxString::UngetWriteBuf() on it.
| wxStringCharType* wxStringBuffer::operator wxStringCharType * | ( | ) |
Returns the writable pointer to a buffer of the size at least equal to the length specified in the constructor.