Udostępnij za pośrednictwem


inline_depth pragma

Określa wewnętrzną głębokość wyszukiwania heurystycznego. Funkcje w głębi grafu wywołań większe niż określona wartość nie są podkreślone.

Składnia

#pragma inline_depth( [ n ] )

Uwagi

Steruje to pragma tworzeniem podwzorców funkcji oznaczonych jako inline i __inline, lub pod opcją kompilatora /Ob . Aby uzyskać więcej informacji, zobacz /Ob (Rozszerzanie funkcji wbudowanej).

n może być wartością z zakresu od 0 do 255, gdzie 255 oznacza nieograniczoną głębokość wykresu wywołań. Wartość 0 hamuje rozszerzanie wbudowane. Jeśli n nie zostanie określony, zostanie użyta wartość domyślna 254.

Kontrolki inline_depthpragma liczebności serii wywołań funkcji można rozszerzyć. Załóżmy na przykład, że głębokość śródliniowa wynosi 4. Jeśli A wywołuje B, a następnie B wywołuje język C, wszystkie trzy wywołania są rozwinięte w tekście. Jednak jeśli najbliższe rozszerzenie głębokości wbudowanej wynosi 2, tylko A i B są rozwinięte, a C pozostaje jako wywołanie funkcji.

Aby użyć tego pragmaelementu , należy ustawić opcję kompilatora na 1 lub nowszą /Ob . Zestaw głębokości używający tej pragma metody ma wpływ na pierwsze wywołanie funkcji po wywołaniu pragma.

Głębokość śródliniowa można zmniejszyć podczas rozszerzania, ale nie zwiększać. Jeśli głębokość śródliniowa wynosi 6, a podczas rozszerzania preprocesor napotka inline_depthpragma wartość 8, głębokość pozostaje 6.

Element inline_depthpragma nie ma wpływu na funkcje oznaczone znakiem __forceinline.

Uwaga

Funkcje rekursywne można zastąpić śródliniową maksymalną głębokością 16 wywołań.

Zobacz też

Pragmadyrektywy i __pragma słowa kluczowe i _Pragma
inline_recursion