这四个内联(关键)字之间有什么区别?
inline
,__inline
,__inline__
,__forceinline
。
答案 0 :(得分:83)
inline
是 关键字,在C ++和C99中。
__inline
是特定于供应商的关键字(例如MSVC),用于C中的内联函数,因为C89没有它。
__inline__
与__inline
类似,但来自另一组编译器。
__forceinline
是另一个特定于供应商的(主要是MSVC)关键字,它将比__inline
提示更多地强制内联函数(例如内联,即使它导致更糟糕的代码)。
GCC和clang中也有__attribute__((always_inline))
。
答案 1 :(得分:20)
答案 2 :(得分:8)