(17)下面說法正確的是
A)內聯(lián)函數(shù)在運行時是將該函數(shù)的目標代碼插入每個調用該函數(shù)的地方
B)內聯(lián)函數(shù)在編譯時是將該函數(shù)的目標代碼插入每個調用該函數(shù)的地方
C)類的內聯(lián)函數(shù)必須在類體內定義
D)類的內聯(lián)函數(shù)必須在類體外通過加關鍵字inline定義
參考答案:(17)B【解析】 內聯(lián)函數(shù)用inline修飾,用于取代C語言中的宏定義。Inline是個建議機制而不是強 制機制.也就是說,程序員可以指定任意函數(shù)為inline函數(shù),但是編譯器會根據(jù)系統(tǒng)情況來決定是 否將其inline處理。對于較大的函數(shù).編譯器往往會取消其inline特性。Inline函數(shù)的特點之一就 是執(zhí)行速度快.他實質是在編譯時將函數(shù)的目標代碼插入到每個調用該函數(shù)的地方,從而沒有出棧 人棧、保護現(xiàn)場等開銷.提高了效率。在類體內定義的成員函數(shù),自動被編譯器當做內聯(lián)函數(shù)處理, 在類體外定義的成員函數(shù),如果用inline修飾,編譯器也認為是一種內聯(lián)建議。
A)內聯(lián)函數(shù)在運行時是將該函數(shù)的目標代碼插入每個調用該函數(shù)的地方
B)內聯(lián)函數(shù)在編譯時是將該函數(shù)的目標代碼插入每個調用該函數(shù)的地方
C)類的內聯(lián)函數(shù)必須在類體內定義
D)類的內聯(lián)函數(shù)必須在類體外通過加關鍵字inline定義
參考答案:(17)B【解析】 內聯(lián)函數(shù)用inline修飾,用于取代C語言中的宏定義。Inline是個建議機制而不是強 制機制.也就是說,程序員可以指定任意函數(shù)為inline函數(shù),但是編譯器會根據(jù)系統(tǒng)情況來決定是 否將其inline處理。對于較大的函數(shù).編譯器往往會取消其inline特性。Inline函數(shù)的特點之一就 是執(zhí)行速度快.他實質是在編譯時將函數(shù)的目標代碼插入到每個調用該函數(shù)的地方,從而沒有出棧 人棧、保護現(xiàn)場等開銷.提高了效率。在類體內定義的成員函數(shù),自動被編譯器當做內聯(lián)函數(shù)處理, 在類體外定義的成員函數(shù),如果用inline修飾,編譯器也認為是一種內聯(lián)建議。