Предположим, что у меня есть такой код:
void printHex(std::ostream& x){
x<<std::hex<<123;
}
..
int main(){
std::cout<<100; // prints 100 base 10
printHex(std::cout); //prints 123 in hex
std::cout<<73; //problem! prints 73 in hex..
}
Мой вопрос в том, есть ли какой-либо способ "восстановить" состояние cout до его исходного после возвращения из функции? (В некоторой степени, как std:: boolalpha и std:: noboolalpha..)?
Спасибо.