iOS OC內聯函式 inline的詳解

2021-09-26 03:36:49 字數 397 閱讀 3612

在ios中的一些框架中,static inline是經常出現的關鍵字組合.

static inline cgfloat cgfloatfrompixel(cgfloat value)  //yyscreenscale()方法說明: cgfloat yyscreenscale() ); return scale; }

雖然static inline修飾的是函式(或者方法,swift出來後,我覺著方法==函式,朋友們不用咬文嚼字,鄙視我輩了).但它在這裡就是巨集的作用,即你可以將cgfloatfrompixel當作乙個巨集.

當然inline函式與巨集有區別,inline可以:

為什麼inline能取代巨集?

優點相比於巨集:

inline內聯函式的說明

iOS OC內聯函式 inline

在ios中的一些框架中,static inline是經常出現的關鍵字組合.static inline cgsize yytextclipcgsize cgsize size static inline uiedgeinsets uiedgeinsetrotatevertical uiedgeinse...

inline 內聯函式

一 inline關鍵字用來定義乙個類的內聯函式,引入它的主要原因是用它替代c中表示式形式的巨集定義。表示式形式的巨集定義一例 define expressionname var1,var2 var1 var2 var1 var2 為什麼要取代這種形式呢,且聽我道來 1 首先談一下在c中使用這種形式巨...

inline內聯函式

技術類筆試題50 都會問巨集與inline的區別,自己去找找看?1 巨集替換發生在預編譯 2 巨集函式 如果可以這麼叫的話 替換時不會檢查引數,inline函式會檢查 3 巨集一定會發生替換,inline貌似不是強制的,編譯器想不替換也沒關係 4 巨集替換時存在著一些不可避免的陷阱 參見c trap...