/O1, /O2 (minimizar tamanho, maximizar velocidade)
Seleciona um conjunto predefinido de opções que afetam o tamanho e a velocidade de arquivos.
/O1
/O2
Comentários
A tabela a seguir descreve /O1 e /O2.
Opção |
Equivalente a |
Comment |
---|---|---|
/O1 (minimize o tamanho) |
/Og /Os /Oy /Ob2 /Gs /GF /Gy |
Cria o código o menor na maioria dos casos. |
/O2 (maximizar a velocidade) |
/Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy |
Cria o código o mais rápido na maioria dos casos. (configuração padrão para construções da versão) |
/O1 e /O2 também permitem que a otimização nomeada do valor de retorno, o que elimina o construtor de cópia e o destruidor de um valor de retorno baseado pilha. Considere o exemplo a seguir. A função de Test não criará o construtor ou o destruidor de cópia. Adicionar instruções para o construtor de construtor, de destruidor e de cópia para ver o efeito de otimização do valor de retorno Named quando você executa o programa. Para obter mais informações, consulte Otimização nomeada do valor de retorno no Visual C++ 2005.
// O1_O2_NRVO.cpp
// compile with: /O1
struct A {
A() {}
~A() {}
A(const A& aa) {}
};
A Test() {
A a;
return a;
}
int main() {
A aa;
aa = Test();
}
x86 específico
Essas opções implicam o uso da opção de omissão de Quadro- ponteiro/Oy().
Específico END x86
Para definir esta opção do compilador no ambiente de desenvolvimento do Visual Studio
Abra a caixa de diálogo Páginas de Propriedade do projeto. Para obter detalhes, consulte Como abrir páginas de propriedade do projeto.
Clique na pasta C/C++.
Clique na página de propriedades de Otimização .
Modifique a propriedade de Otimização .
Para definir essa opção do compilador via programação
- Consulte Optimization.