Ada信息交换所states the following:
使用编译指示
Inline
确实有其缺点。它可以在主体上创建编译依赖项。也就是说,当规范使用杂注Inline
时,可能需要先编译规范和相应的主体,然后才能使用规范。
将杂物Inline
放在体内可以避免这个问题吗?
优点是规范中的Inline
允许跨单元内联,这可以是非常强大的运行时优化。
您提到的缺点很重要,而不是在速度较慢或内核很少的计算机上编译时。然后是运行时间与编译时间之间的权衡。
[请注意,在GNAT上,跨单元内联是通过单个开关(-gnatn
)启用的,因此,请不要担心Inline
编译指示创建编译依赖项:您可以使用该开关打开或关闭整个机制切换。