文法:
ostream& ostream::flush();
flush()関数は現在の出力ストリームのバッファの内容を、実際の出力先のデバイスに書き出します。
この関数はよくデバッグ情報の出力に使用されます。プログラムが異常終了する直前に出力バッファにたまったデバッグ情報をスクリーンに出力します。すべてのデバッグ情報出力が確実に出力されるように、flush()関数を慎重に使う必要があるでしょう。
デバッグにはcerrを使用すべきです。cerrはデフォルトでは出力のバッファリングは行われません。
関連トピック: put, write