Compartilhar via


/Ob (expansão de função embutida)

Controla a expansão embutida de funções.

/Ob{0|1|2}

Arguments

  • 0
    Desabilita expansões embutido. Por padrão, expansão ocorre a critério do compilador em todas as funções, conhecida como automática inlining.

  • 1
    Permite expansão apenas das funções marcadas embutido, inline, ou forceinline, ou em uma função de membro C++ definido em uma declaração de classe.

  • 2
    O valor padrão. Permite expansão das funções marcadas como inline, __inline, ou __forceinline, e qualquer outra função que o compilador escolhe.

    /Ob2 está em vigor quando /O1, /O2 (minimizar tamanho, maximizar velocidade) ou /Ox (otimização total) é usado.

    Essa opção requer que você habilite otimizações usando /O1, /O2, /Ox, ou /Og.

Comentários

O compilador trata as opções de expansão embutida e as palavras-chave como sugestões. Não há nenhuma garantia de que todas as funções serão embutidas expandidas. Você pode desabilitar expansões embutido, mas você não pode forçar o compilador a embutir uma função específica, mesmo ao usar o __forceinline palavra-chave.

Você pode usar o #pragma auto_inline diretiva para excluir funções da consideração como candidatos para expansão embutida. Consulte também o #pragma Intrínseco diretiva.

Dica

Informações coletadas de execuções de teste de criação de perfil substituem otimizações que seriam em vigor se você especificar /Ob, /Os, ou /Ot.Para obter mais informações, consulte Otimizações orientadas a perfil.

Para definir esta opção do compilador no ambiente de desenvolvimento do Visual Studio

  1. Abra a caixa de diálogo Páginas de Propriedades do projeto. Para obter detalhes, consulte Trabalhando com propriedades do projeto.

  2. Expanda Propriedades de configuração, C/C++, e selecione otimização.

  3. Modificar o expansão de função embutida propriedade.

Para definir essa opção do compilador via programação

Consulte também

Referência

/O opções (otimizar código)

Opções do compilador

Definindo opções do compilador