comment
pragma
將註解記錄放入目的檔或可執行檔中。
語法
#pragma comment(
comment-type [,
“comment-string” ])
備註
批註類型是下列其中一個預先定義的標識碼,可指定批注記錄的類型。 選擇性 批注字串是字串常 值,可提供某些批注類型的其他資訊。 因為 批註字串 是字串常值,所以它會遵守字串常值使用逸出字元、內嵌引號 ("
) 和串連的所有規則。
compiler
將編譯器的名稱和版本號碼放入目的檔中。 連結器會忽略這個註解記錄。 如果您為此記錄類型提供 批註字串 參數,編譯程式會產生警告。
lib
在目的檔中放入程式庫搜尋記錄。 這個批注類型必須伴隨 批註字串 參數,該參數具有您想要連結器搜尋的連結庫名稱(以及可能的路徑)。 連結庫名稱會遵循物件檔中的默認連結庫搜尋記錄。 鏈接器會搜尋此連結庫的方式,就像您在命令行上指定連結庫一樣,只要未使用 /nodefaultlib
指定連結庫即可。 您可以將多個連結庫搜尋記錄放在相同的原始程式檔中。 每個記錄都會以在原始程序檔中找到的相同順序出現在物件檔中。
如果默認連結庫和新增的連結庫順序很重要,使用 /Zl
參數進行編譯會防止預設連結庫名稱放在物件模組中。 接著,第二個批注 pragma 可用來在新增的連結庫之後插入默認連結庫的名稱。 以這些 pragma 指示詞列出的連結庫將會以在原始程式碼中找到的順序出現在物件模組中。
連結器
將 連結器選項 放在物件檔中。 您可以使用這個註解類型指定連結器選項,而不要將其傳遞到命令列或是在開發環境中指定。 例如,您可以指定 /include 選項強制包含符號:
#pragma comment(linker, "/include:__mySymbol")
只有下列 (批註類型) 連結器選項可供傳遞至連結器識別碼:
使用者
將一般註解放入目的檔中。 comment-string 參數包含批注的文字。 連結器會忽略這個註解記錄。
範例
下列 pragma 會導致連結器搜尋 EMAPI。連結時 LIB 連結庫。 鏈接器會先在目前的工作目錄中搜尋,然後在 LIB 環境變數中指定的路徑中搜尋。
#pragma comment( lib, "emapi" )
下列 pragma 會讓編譯程式將編譯程式的名稱和版本號碼放在物件檔中:
#pragma comment( compiler )
對於採用 批注字串 參數的批注,只要巨集擴充至字串常值,就可以在任何使用字串常值的位置使用巨集。 您也可以串連任何的組合,其中包括字串常值以及可展開為字串常值的巨集。 例如,以下是可接受的陳述式:
#pragma comment( user, "Compiled on " __DATE__ " at " __TIME__ )