std::flush
Da cppreference.com
![]() |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
Definido no cabeçalho <ostream>
|
||
template< class CharT, class Traits > std::basic_ostream<charT,traits>& flush( std::basic_ostream<CharT, Traits>& os ); |
||
Libera a seqüência de saída
os
como se chamando os.flush(). Original:
Flushes the output sequence
os
as if by calling os.flush(). The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Esta é uma saída de somente manipulador de I / O, que pode ser chamada com uma indicação tal como para qualquer out << std::flush
out
de std::basic_ostream tipo.Original:
This is an output-only I/O manipulator, it may be called with an expression such as out << std::flush for any
out
of type std::basic_ostream.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Índice |
[editar] Notas
Este manipulador pode ser utilizado para produzir uma linha de saída imediatamente incompleta, por exemplo, ao exibir a saída de um processo de longa duração, o registro da atividade de vários segmentos ou registrar a atividade de um programa que pode falhar inesperadamente. Um esvaziamento explícito de std::cout também é necessária antes de uma chamada para std::system, se o processo gerado executa qualquer tela de I / O (um exemplo comum é std::system("pause") no Windows). Na maioria dos outros habituais interativos / S cenários, std::endl é redundante quando usado com std::cout porque qualquer entrada de std::cin, saída para std::cerr, ou término do programa obriga uma chamada para std::cout.flush().
Original:
This manipulator may be used to produce an incomplete line of output immediately, e.g. when displaying output from a long-running process, logging activity of multiple threads or logging activity of a program that may crash unexpectedly. An explicit flush of std::cout is also necessary before a call to std::system, if the spawned process performs any screen I/O (a common example is std::system("pause") on Windows). In most other usual interactive I/O scenarios, std::endl is redundant when used with std::cout because any input from std::cin, output to std::cerr, or program termination forces a call to std::cout.flush().
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Quando uma linha completa de saída tem de ser lavada, o manipulador std::endl podem ser utilizados.
Original:
When a complete line of output needs to be flushed, the std::endl manipulator may be used.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Quando cada operação de saída tem de ser lavada, o manipulador std::unitbuf pode ser usado.
Original:
When every output operation needs to be flushed, the std::unitbuf manipulator may be used.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar] Parâmetros
os | - | referência ao fluxo de saída
Original: reference to output stream The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
[editar] Valor de retorno
os
(referência ao fluxo após a manipulação)Original:
os
(reference to the stream after manipulation)The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
[editar] Exemplo
Sem std :: flush, a saída será a mesma, mas pode não aparecer em tempo real .
Original:
Without std::flush, the output would be the same, but may not appear in real time.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
#include <iostream> #include <chrono> template<typename Diff> void log_progress(Diff d) { std::cout << "..(" << std::chrono::duration_cast<std::chrono::milliseconds>(d).count() << " ms).." << std::flush; } int main() { volatile int sink=0; auto t1 = std::chrono::high_resolution_clock::now(); for(int j=0; j<5; ++j) { for(int n=0; n<10000; ++n) for(int m=0; m<20000; ++m) sink += m*n; // do some work auto now = std::chrono::high_resolution_clock::now(); log_progress(now - t1); } std::cout << '\n'; }
Saída:
..(450 ms)....(901 ms)....(1350 ms)....(1800 ms)....(2250 ms)..
[editar] Veja também
controles se a saída é liberada após cada operação Original: controls whether output is flushed after each operation The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função) | |
saídas '\n' e libera o fluxo de saída Original: outputs '\n' and flushes the output stream The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (modelo de função) | |
sincroniza com o dispositivo de armazenamento subjacente Original: synchronizes with the underlying storage device The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (of std::basic_ostream função pública membro)
|