В С++ для печати числа в шестнадцатеричном виде вы выполните следующее:
int num = 10;
std::cout << std::hex << num; // => 'a'
Я знаю, что могу создать манипулятор, который просто добавляет материал в поток:
std::ostream& windows_feed(std::ostream& out)
{
out << "\r\n";
return out;
}
std::cout << "Hello" << windows_feed; // => "Hello\r\n"
Однако, как я могу создать манипулятор, который, подобно "hex", изменяет элементы, входящие в поток? В качестве простого примера, как я могу создать здесь манипулятор плюс?:
int num2 = 1;
std::cout << "1 + 1 = " << plusone << num2; // => "1 + 1 = 2"
// note that the value stored in num2 does not change, just its display above.
std::cout << num2; // => "1"