Compartilhar via


inline_depth pragma

Especifica a profundidade de pesquisa heurística embutida. Funções em profundidade no grafo de chamadas maiores que o valor especificado não são embutidas.

Sintaxe

#pragma inline_depth( [ n ] )

Comentários

Este pragma controla o processo de embutir das funções marcadas com inline e __inline ou embutidas automaticamente sob a opção do compilador /Ob. Para mais informações, confira /Ob (Expansão de função embutida).

n pode ser um valor entre 0 e 255, em que 255 significa profundidade ilimitada no grafo de chamadas. Um valor de 0 inibe a expansão embutida. Quando n não é especificado, o valor padrão 254 é usado.

O inline_depthpragma controla o número de vezes que uma série das chamadas de função pode ser expandida. Por exemplo, suponha que a profundidade embutida seja 4. Se A chamar B e B chamar C, as três chamadas serão embutidas expandidas. No entanto, se a expansão de profundidade embutida mais próxima for 2, somente A e B serão expandidos, e C permanecerá como uma chamada de função.

Para usar esse pragma, você deve definir a opção do compilador /Ob como 1 ou superior. A profundidade definida com esse pragma entra em vigor na primeira chamada de função após o pragma.

A profundidade embutida pode ser diminuída durante a expansão, mas não pode ser aumentada. Se a profundidade embutida for 6 e, durante a expansão, o pré-processador encontrar um inline_depthpragma com um valor de 8, a profundidade continuará sendo 6.

O inline_depthpragma não tem nenhum efeito em funções marcadas com __forceinline.

Observação

As funções recursivas podem ser substituídas embutidas até a profundidade máxima de 16 chamadas.

Confira também

Diretivas do Pragma e as palavras-chave do __pragma e _Pragma
inline_recursion