直接插入

允许编译器考虑将函数调用替换为被调用函数的指令。 直接插入函数可消除调用的开销,并可实现更好的优化。 多次调用的小函数是直接插入的好候选项。
注: 指定 INLINE 选项时,还必须指定所有先前的 INLINE 选项,包括其缺省值。
INLINE 语法
读取语法图跳过可视语法图INLINE(*OFF*ON*AUTO*NOAUTOINLINE 详细信息)
INLINE 详细信息 (续)
读取语法图跳过可视语法图2501-65535*NOLIMIT20001-65535*NOLIMIT*NO*YES
可能的 INLINE 选项包括:
内联
指定是否使用直接插入。
*关闭
缺省设置。 指定将不会在编译单元上执行直接插入。
*ON
指定将在编译单元上执行直接插入。 如果指定了调试列表视图,那么会关闭内联。
方式
指定 inliner 是否应尝试根据其阈值和限制自动内联函数。
*自动
指定内联应根据指定的 "阈值" 和 "限制" 来确定是否可以内联函数。 #pragma noinline 伪指令覆盖 *AUTO。 这是缺省情况。
*NOAUTO
指定仅应将标记为直接插入的函数视为直接插入的候选函数。 标记为直接插入的函数包括为其指定了 #pragma 内联伪指令的 C 函数,使用内联关键字声明的 C++ 函数以及由语言规则标记为直接插入的 C++ 函数。
阈值
指定可作为自动内联候选项的函数的最大大小。 大小以抽象代码单元度量。 抽象代码单元的大小与函数中的可执行代码成比例 ;C 和 C++ 代码由编译器转换为抽象代码单元。
250
指定阈值 250。 这是缺省情况。
1-65535
指定从 1 到 65535 的阈值。
*不限制
将阈值定义为程序的最大大小。
限制
指定函数在自动内联停止之前可以增大的最大相对大小。
2000
指定限制为 2000。 这是缺省情况。
1-65535
指定从 1 到 65535 的限制。
*不限制
限制定义为程序的最大大小。 可能会迂到系统限制。
报告
指定是否使用编译器列表生成内联报告。
*没有
未生成内联报告。 这是缺省情况。
*YES
生成内联报告。 必须指定 OUTPUT (*PRINT) 以生成内联报告。