C ++ Функция преобразования файлов для использования StringStream

У меня есть множество классов C ++, которые читают данные из потока файлов. Функции выглядят так.

bool LoadFromFile(class ifstream &file);

Я создаю новую функцию для чтения из памяти вместо файла. Поэтому я оглал, и IstringStream, кажется, делает трюк без каких-либо модификаций кода.

bool LoadFromData(class istringstream &file);

Теперь мой вопрос. Мне нужно построить этот поток для чтения из массива Char. Строка не расторгнута NULL, это чистые двоичные данные, и я получил целое число с размером. Я попытался назначить его строке и создавать поток из строки, однако строка завершается после нулевого символа .. И данные копируются.

int size;
char *data;
string s = *data;

Как создать строку из указателя Arch Array без копирования данных +, указывающих размер данных указателя? Вы знаете любое другое решение, чем StringStream?

5
задан Tito 20 September 2011 в 11:09
поделиться