dcl.inline 翻譯

這是一個(gè)幾乎是私人的ISO 14882的內(nèi)容翻譯,希望看官指出不足!
本文地址


9.1.6

1

inline指定符僅僅只能出現(xiàn)在變量或函數(shù)的聲明或定義處.

2

一個(gè)用了inline指定符的函數(shù)聲明聲明了一個(gè) inline function.其中,inline指定符對(duì)實(shí)現(xiàn)表明:相對(duì)于通常的函數(shù)調(diào)用機(jī)制應(yīng)優(yōu)先考慮在函數(shù)調(diào)用處進(jìn)行函數(shù)體的內(nèi)聯(lián)替換.實(shí)現(xiàn)并沒有被要求一定要在調(diào)用處執(zhí)行這個(gè)內(nèi)聯(lián)替換;然而,就算這個(gè)內(nèi)聯(lián)替換被忽略,但是對(duì)于在本文中出現(xiàn)的對(duì)inline function的規(guī)定依然是要求被遵守的.

3

一個(gè)用了inline制定符的變量聲明聲明了一個(gè) inlie variable.

4

在類定義內(nèi)的函數(shù)定義是一個(gè)inline function

5

inline指定符不應(yīng)該出現(xiàn)在塊作用域的聲明中,如果inline指定符在friend function declaration(友元函數(shù))定義處,則該函數(shù)的聲明應(yīng)該是一個(gè)定義或該函數(shù)應(yīng)該預(yù)先就聲明為了inline.

6

一個(gè)inline函數(shù)或變量應(yīng)該在每個(gè)其被odr-used[ToDo]的翻譯單元中定義并且在每個(gè)定義的翻譯單元中有著完全一樣的聲明.[注意:調(diào)用inline函數(shù)或使用inline變量可能在其被當(dāng)前翻譯單元定義前]在一個(gè)翻譯單元中如果一個(gè)函數(shù)或變量在它的第一個(gè)inline聲明前被定義則程序是ill-formed的.如果一個(gè)函數(shù)或變量有外部鏈接同時(shí)在一個(gè)翻譯單元中被聲明為inline,則它應(yīng)該在期出現(xiàn)的所有的翻譯單元中都被聲明為inline;對(duì)此不做診斷(霧).一個(gè)有外部鏈接的inline變量或函數(shù)在所有的翻譯單元中地址都相同[注意:在有外部鏈接的inline函數(shù)中的一個(gè)static的本地變量也都指的是一個(gè)對(duì)象.在有外部鏈接的inline函數(shù)中的類型定義在每個(gè)翻譯單元中都是同樣的類型]

94

inline關(guān)鍵字不對(duì)函數(shù)的鏈接產(chǎn)生影響

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容