Compartilhar via


Otimização de seu código.

Otimizando um executável, você pode obter um equilíbrio entre a velocidade de execução rápida e o tamanho do código pequeno. Este tópico discute alguns dos mecanismos de Visual C++ oferece para ajudá-lo a otimizar o código.

Recursos da linguagem

Os tópicos a seguir descrevem alguns dos recursos de otimização na linguagem C/C++.

Otimizar Pragma

Se uma seção otimizada do código de causar erros ou uma diminuição, você pode usar o otimizar pragma para desativar a otimização dessa seção.

Coloque o código entre dois pragmas, da seguinte maneira.

#pragma optimize("", off)
// some code here 
#pragma optimize("", on)

Práticas de programação

Quando você compilar seu código com a otimização, você poderá observar mensagens de aviso adicionais. Esse comportamento é esperado porque algumas advertências se relacionam apenas ao código otimizado. Se você prestar atenção a esses avisos, você pode evitar muitos problemas de otimização.

Paradoxal, otimização de um programa para velocidade poderia causar lenta a execução de código. Isso ocorre porque algumas otimizações para a velocidade de aumentam o tamanho do código. Por exemplo, as funções inlining elimina a sobrecarga de chamadas de função. No entanto, inlining muito código pode fazer seu programa tão grande que o número da página de memória virtual aumentos de falhas. Portanto, a velocidade obtida através da eliminação de chamadas de função pode ser perdida para a troca de memória.

Os tópicos a seguintes abordam boas práticas de programação.

Depurar o código otimizado

Porque a otimização pode alterar o código criado pelo compilador, recomendamos que você depura seu aplicativo e medir seu desempenho e otimizar o seu código.

Os tópicos a seguir fornecem informações básicas sobre como depurar.

Os seguintes tópicos fornecem informações mais avançadas sobre como depurar.

A variedade seguinte tópicos fornecem informações sobre como otimizar a criação, carregar e executar o seu código.

Consulte também

Outros recursos

Referência de construção C/C++