Конечно, существующие манипуляторы не покрывают всех возможностей, которые бывают необходимы. Но можно сделать свои. Давайте посмотрим.
#include "stdafx.h" #include "iostream.h" #include "strstrea.h" ostream& hello( ostream& os ) { return os << "Hello "; } void main() { int i=255; cout << hello << hex << i << endl; cout << dec << i << endl; cout << hello << oct << i << endl; }
А вот результат:
Конечно пример упрощенный и толку с него мало. Но думаю идея понятна. В MSDN, например, приведен пример манипулятора, который делает жирным шрифт на принтере используя ESC последовательности.
ostream& bold( ostream& os ) { return os << '\033' << '['; } cout << "regular " << bold << "boldface" << endl;