2010-05-04 243 views

回答

71

inline關鍵字,在C++和C99中。

__inline是C語言中內聯函數的特定於供應商的關鍵字(例如MSVC),因爲C89沒有它。

__inline類似,但來自另一組編譯器。

__forceinline是另一個供應商特定的(主要是MSVC)關鍵字,它將應用比__inline提示更多的內聯函數(例如內聯,即使它導致更糟糕的代碼)。

GCC和clang中還有__attribute__((always_inline))

+10

__forceinline比inline更有力的提示,但仍然只是一個提示(http://msdn.microsoft.com/en-us/library/z8y1yy88%28VS.80%29.aspx)。 – 2010-05-04 12:41:48

+0

也許考慮將「微軟專用」語言改爲「特定供應商」或類似的東西。我使用的許多嵌入式交叉開發工具集還支持__inline和__forceinline。這個世界比MSOFT更大;-) – Dan 2010-05-04 14:16:05

+1

糟糕的是,Oops意外地發了帖子。隨你。 – kennytm 2013-12-30 11:54:36

18

__inline,和__forceinline都是特定實現。由於雙下劃線,它們都是爲實現保留的標識符,因此不應與應用程序中使用的標識符衝突。

inline是唯一的C++關鍵字。

相關問題