нужно ли каждый раз устанавливать io-манипуляторы в ostringstream?

У меня есть следующий код

int main()
{
   std::ostringstream v1,v2;

   v1<<setw(5)<<setfill('x')<<5;
   v1<<6;
   std::cout<<"Version 1: "<<v1.str()<<std::endl;

   v2<<setw(5)<<setfill('x')<<5;
   v2<<setw(5)<<setfill('x')<<6;
   std::cout<<"Version 2: "<<v2.str()<<std::endl;



   return 0;
}

В версии 1 я впервые установил манипулятор. Но при печати 6 он не был заполнен «x».

В версии 2 я оба раза устанавливал манипулятор. Но при печати 6 он был заполнен «x».

Нужно ли устанавливать манипулятор каждый раз (или) я что-то здесь упускаю?


person VINOTH ENERGETIC    schedule 31.05.2016    source источник
comment
setw влияет только на один выход. Потом снова сбрасывается.   -  person Bo Persson    schedule 31.05.2016
comment
@BoPersson Это только для setw или применимо и к setfill   -  person VINOTH ENERGETIC    schedule 31.05.2016
comment
@BoPersson, есть ли способ подать заявку на все   -  person VINOTH ENERGETIC    schedule 31.05.2016
comment
setw особенный. Остальные настройки липкие.   -  person Bo Persson    schedule 31.05.2016