pubsetbuf Visual Studio 2010でstd :: stringbufのメンバーが全く動作していません!Visual Studio std :: stringstream pubsetbufが動作しない
コード: pubsetbuf
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);
は、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のメンバーです。