Rust有一个"内联"属性,可用于以下三种口味之一:
#[inline]
#[inline(always)]
#[inline(never)]
什么时候使用?
在Rust参考资料中,我们看到an inline attributes section个说法
编译器根据内部启发法自动内联函数.不正确的内联函数实际上会使程序变慢,因此使用时应小心.
在Rust internals论坛上,huon也获得了conservative about specifying inline分.
但我们在Rust source中看到了considerable usage个,包括标准库.许多内联属性被添加到单行函数中,这应该很容易让编译器根据参考通过启发式发现和优化.这些事实上是不需要的吗?