上一節說道,組合語言的**已經告一段落了,接下來我們將進入c++的世界了。但是visual c++不是被設計用來開發作業系統的。假如我們用visual c++設計乙個程式,那麼在預設情況下,它必須跑在windows下。所以我們必須做一些工作使得我們的程式能夠脫離windows執行。 因此,為了達到這個目的,我們必須對visual c++的編譯選項做一些特殊的配置。
首先,我們不能鏈結 visual c++的執行時庫。應為vc的執行時庫依賴於windows下的幾個動態鏈結庫。換句話說,我們必須自己為c++ 建立乙個執行時庫。至少,這個執行時庫要支援c++異常,c++靜態物件的初始化等等。我們將在下一節討論c++執行時庫的問題。為了不讓visual c++鏈結標準的c++執行時庫,我們需要進行如下圖的設定:
完成了這些操作後,visual c++生成出來的**就脫離了windows的平台。只要我們再為其補上乙個執行時庫,一切就全部ready了。後面幾節將將講述visual c++的執行時庫設計,以及visual c++的異常實現機制。
Visual C 鏈結器選項
visual c 鏈結器選項 鏈結器選項 link 是將通用物件檔案格式 coff 物件檔案和庫鏈結起來以建立可執行 exe 檔案或動態鏈結庫 dll 的工具。下表是 link.exe 選項的綜合列表。本節還包含關於以下主題的資訊 可以通過 comment 雜注指定一些鏈結器選項。選項 用途 指定響...
Visual C 編譯器選項
visual c 編譯器選項 選項 目的 指定響應檔案 列出編譯器選項 ai指定在解析傳遞到 using 指令的檔案引用時搜尋的目錄 arch 使用sse 或sse2 指令生成 c 在預處理期間保留注釋 c 編譯但不鏈結 clr 啟用c 的託管擴充套件並產生在公共語言執行庫上執行的輸出檔案 d 定義...
Visual C 編譯器選項
選項 目的 指定響應檔案 列出編譯器選項 ai指定在解析傳遞到 using 指令的檔案引用時搜尋的目錄 arch 使用 sse 或sse2 指令生成 c 在預處理期間保留注釋 c 編譯但不鏈結 clr 啟用 c 的託管擴充套件並產生在公共語言執行庫上執行的輸出檔案 d 定義常數和巨集 e 將預處理器...