inline_recursion pragma

控制直接或相互递归函数调用的内联扩展。

语法

#pragma inline_recursion( [ { on | off } ] )

备注

使用此 pragma 控制被标记为 inline__inline 的函数,或者编译器在 /Ob2 选项下自动扩展的函数。 使用此 pragma 需要将 /Ob 编译器选项设置为 1 或 2。 inline_recursion 的默认状态为关闭。 此 pragma 在 pragma 出现后在第一个函数调用处生效,并且不会影响函数的定义。

inline_recursionpragma 控制如何扩展递归函数。 如果 inline_recursion 处于关闭状态,并且内联函数(直接或间接)调用自身,则该函数仅扩展一次。 如果 inline_recursion 处于打开状态,则该函数将扩展多次,直到它达到使用 inline_depthpragma 设置的值(inline_depthpragma 定义的递归函数的默认值,或容量限制)。

另请参阅

Pragma指令和__pragma_Pragma关键字
inline_depth
/Ob(内联函数展开)