pubsetbuf член std:: stringbuf вообще не работает в Visual Studio 2010!
Код:
char *FileData = ... ;
unsigned long long FileDataLen = ... ;
std::stringstream *SS = new std::stringstream(std::stringstream::in | std::stringstream::out);
SS->rdbuf()->pubsetbuf( FileData, (std::streamsize)FileDataLen );
pubsetbuf ничего не делает в Visual Studio!!!
Обходной путь № 1:
std::stringstream *SS = new std::stringstream( std::string(FileData, (size_type)FileDataLen ) ),std::stringstream::in | std::stringstream::out);
Обходной путь №2:
SS->rdbuf()->sputn(FileData, (streamsize)FileDataLen);
Но обе эти обходные пути создают ненужное копирование памяти. Мне определенно нужен рабочий pubsetbuf член std:: stringbuf.