RUA!

第 8 章 Create 与模块

TABLE OF CONTENTS

    有时,可能需要对函数的内联进行微观管理,但我们通常会把这种优化留给编译器。可以使用 #[inline] 属性进行微观管理:

    #[inline]
    fn add(x: i32, y: i32) -> i32 {
        x + y
    }
    

    只有在一种特定的情况下,如果没有 #[inline],就不会发生内联。当一个 crate 中定义的函数或方法在另一个 crate 中被调用时,Rust 不会将其内联,除非它是泛型的或名曲的标记为 #[inline]