Share via


comment (C/C++)

將註解記錄放入可執行檔或目的檔中。

#pragma comment( comment-type [,"commentstring"] )

備註

註解型別是指的預先定義的識別項,如下所述,指定的註解記錄類型。 選擇性的commentstring是一個字串常值,提供一些註解類型的其他資訊。 因為commentstring是一個字串常值,它應遵循大幅度地逸出字元,內嵌的引號的字串常值的規則 ('),和串連。

  • 編譯器
    將編譯器的名稱和版本號碼放在目的檔中。 連結器會忽略這個註解記錄。 如果您提供commentstring參數,此記錄的類型,編譯器會產生警告。

  • exestr
    數位commentstring在目的檔中。 在連結階段這個字串會放在可執行檔。 字串不會載入記憶體時載入可執行檔。 不過,您可以找到與程式,以尋找檔案中的可列印的字串。 這個註解記錄類型的用途之一是內嵌在可執行檔的版本號碼或類似的資訊。

    exestr已被取代,且會移除在未來的版本。 連結器並不會處理註解記錄。

  • lib
    將程式庫搜尋記錄放在目的檔中。 這個註解型別必須伴隨著commentstring參數包含名稱 (和可能的路徑) 您想要搜尋的連結器的程式庫。 遵循預設程式庫搜尋檔案中的記錄物件 ; 程式庫名稱。 就如同已命名命令列上的文件庫不使用所指定,連結器就會搜尋此文件庫的 /nodefaultlib。 多個程式庫搜尋資料錄置於相同的原始程式檔; 每一筆記錄就會出現在目的檔中會出現原始程式檔的順序相同。

    如果預設程式庫和加入的程式庫的順序非常重要的以編譯 /Zl 參數會阻礙預設程式庫名稱被放在物件模組中。 第二個的註解 pragma 然後可用來插入後新增的文件庫的預設程式庫的名稱。 列出,且這些程式結合程式庫會出現在物件模組,位於原始程式碼中的順序相同。

  • 連結器
    數位連結器選項在目的檔中。 若要指定連結器選項,而非將它傳遞至命令列,或將它指定在開發環境中,您可以使用這個註解型別。 例如,您可以指定 / 包含] 選項來強制包含的符號:

    #pragma comment(linker, "/include:__mySymbol")
    

    只有下列 (註解型別) 連結器選項都是要傳遞給連結器識別項:

  • User - 使用者
    一般註解置於該目的檔中。 commentstring參數會包含註解文字。 連結器會忽略這個註解記錄。

下列 pragma 使連結器 EMAPI 搜尋。LIB 文件庫連結時發生。 連結器會先搜尋目前的工作目錄中,然後在 LIB 環境變數所指定的路徑。

#pragma comment( lib, "emapi" )

下列 pragma 會使編譯器將編譯器的名稱和版本號碼放在目的檔中:

#pragma comment( compiler )
注意事項注意事項

如註解,使其commentstring參數,您就可以使用巨集以您使用字串常值、 將巨集會擴充為字串常值。您也可以串連字串常值和字串常值來展開的巨集的任何組合。例如,下列陳述式是可接受的:

#pragma comment( user, "Compiled on " __DATE__ " at " __TIME__ ) 

請參閱

參考

Pragma 指示詞 」 和 「 __Pragma 關鍵字