Можно ли узнать длину std :: wostringstream перед вызовом .str ()?

Я смотрю в станд :: wostringstream и как правильно его использовать. Мне было интересно, есть ли способ узнать длину построенной строки заранее? Я пытался найти информацию о MSDN и http://en.cppreference.com/w/ и, наконец, Google, но не смог найти то, что я искал.

Например, если я передам ссылку wostringstream для функции, возможно ли, чтобы функция узнала, является ли поток пустым или нет, и как долго это происходит, не делая копию, вызывая .ул ()?

3

Решение

Вы могли бы использовать tellp() функция-член, которая возвращает индикатор выходной позиции связанного буфера потока. Например:

#include <string>
#include <sstream>
#include <iostream>

int main()
{
std::wostringstream oss;
oss << L"Hello" << " World!" << std::endl;
std::cout << oss.tellp();
}

Вот живой пример.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]