Não existe um único procedimento para obter mais desempenho. Desempenho é um pouco de cada um dos detalhes!
Geralmente quando você usa um IDE eles costumam autocompletar seu std::cout
com std::endl
e isso não é uma boa ideia!
Usar std::endl
pode ser ineficiente, pois na verdade ele faz duas tarefas:
'\n'
;std::flush
.Ou seja, ao usar std::endl
equivale a usar: '\n' << std::flush
.
Ao escrever texto para o console usando std::cout
geralmente limpa a saída de qualquer maneira (e se isso não acontecer, geralmente não importa), então ter std::endl flush
raramente é importante.
Por causa disso, o uso do caractere '\n'
é normalmente preferível. O caractere '\n'
move o cursor para a próxima linha, mas não faz a descarga redundante, por isso tem um desempenho melhor. O caractere '\n'
também tende a ser mais fácil de ler, pois é mais curto e pode ser incorporado ao texto existente.
O std::endl
é tecnicamente desnecessário, uma vez que o programa termina imediatamente depois.
O
std::endl
pode ser útil somente quando: primeiro, ajuda a indicar que a linha de saída é um “pensamento completo”. Em segundo lugar, se mais tarde quisermos adicionar instruções de saída, não temos que modificar o código existente. Podemos apenas adicioná-los. Mas na maioria “esmagadora” dos casos você não precisará utilizá-lo.
Vamos analisar o tempo de execução do programa abaixo usando o std::endl
e depois somente o \n
:
Para isso vamos utilizar o comando
time
para nos informar o tempo de execução
std::endl
Tempo de execução segundo o comando time
:
'\n'
Tempo de execução segundo o comando time
:
Ou seja, tivemos um ganho de 3 segundos a cada 1 milhão de ciclos, geralmente quando um programa fica aberto ele faz muito mais ciclos do que isso!
Caso deseje saber mais sobre o comando time
use: man time
!
DICA DE VÍDEO: Esse vídeo mostra desempenho de linguagens de programação verificadas com o comando
time
:Testei o Desempenho de 10 Linguagens de Programação com Ranking
Por hoje é só, são pequenas doses diárias que farão sempre nos manter antenado com o C++ !
Então se inscreva nos nossos Cursos de C++ Moderno . Você aprender criar:
Acesse o endereço: