適用於 UNIX 使用者的 Microsoft C++ 簡介
本主題提供各種 UNIX 使用者的資訊,他們不熟悉 Visual Studio,而且想要透過命令行或使用 Visual Studio,透過C++提高生產力。 您可以使用 Visual Studio 搭配 Microsoft C++ 編譯程式以 Windows 為目標。 您也可以在 UNIX 環境中搭配 GCC 或 Clang 使用 Visual Studio IDE,例如遠端 Linux 機器、MinGW-w64 和 Windows 子系統 Linux 版。 若要在 Visual Studio 中使用C++, 必須安裝具有 C++ 工作負載的桌面開發。 開啟 Visual Studio 安裝程式 以安裝工作負載,或新增或移除選用元件。 如果您要以遠端 Linux 計算機為目標,請安裝 具有C++ 工作負載的 Linux 開發。 針對 Android 或 iOS 開發,請安裝 具有 C++ 工作負載的行動開發。
在命令行上開始使用
您可以使用命令行中的Microsoft C++編譯程式,就像使用 UNIX 命令行環境一樣。 您可以從命令提示字元,使用命令列 C 和 C++ 編譯器 (CL.EXE)、連結器 (LINK.EXE) 和其他工具進行編譯,包括 Microsoft 版的 UNIX make 公用程式 NMAKE.EXE。
在 UNIX 中,命令會安裝在通用資料夾中,例如 /usr/bin。 在 Visual Studio 中,命令列工具會安裝在您的 Visual Studio 安裝目錄 (VC\bin 子目錄中) 及其子目錄中。 不同於 UNIX,這些工具無法從一般命令提示字元視窗存取。 若要使用命令列工具,您必須使用特殊的開發人員命令提示字元,以設定編譯C++程式所需的路徑和其他環境變數。 如需詳細資訊,請參閱在命令列上建置 C/C++ 程式碼和逐步解說:在命令列上編譯原生 C++ 程式。
偵錯您的程式碼
您可以使用 Visual Studio 調試程式,從命令行或 IDE 內Microsoft C++專案。 使用 /Z7、/Zi、/ZI (偵錯資訊格式) 參數進行編譯,以啟用逐步執行來源。 如需詳細資訊,請參閱偵錯原生程式碼和使用 Visual Studio IDE 進行 C++ 桌面程式開發。
針對使用 GCC 或 Clang 編譯的程式,Visual Studio 會叫用 GDB、LLDB 或任何您指定的自定義調試程式。
Visual Studio 專案系統
Visual Studio 項目系統稱為 MSBuild。 它會使用 XML 格式的項目檔;C++項目檔具有擴展名.vcxproj。 應用程式是由多個程式庫和可執行檔所組成,並儲存在屬於單一「方案」的多個專案中,其中每個程式庫和可執行檔可能是以一組不同的編譯器選項,或甚至不同的語言所建置。 方案是將多個專案群組在一起的抽象容器。 方案的相關資訊會儲存在副檔名為 .sln 的方案檔中。 如需詳細資訊,請參閱 Visual Studio 中的方案和專案和使用 Visual Studio IDE 進行 C++ 桌面程式開發。 從主功能表中,選擇 [ 檔案>新>專案 ] 以查看可用的Visual Studio專案範本。
從 Visual Studio 2017 開始,會新增 CMake 項目的支援,以及搭配任何任意建置系統使用 Microsoft C++ 編譯程式的選項,或是原始程式檔的鬆散資料夾,而且沒有項目檔。 如需詳細資訊,請參閱Visual Studio中的 CMake 專案和 Visual Studio 中的 Open Folder 專案。
Microsoft 特定修飾詞
Microsoft編譯程式會實作標準 C 的數個延伸模組,並C++程式設計語言來支援 Windows 操作系統的程序設計。 這些擴充功能可用來指定儲存類別屬性、函式呼叫慣例和基底定址等。 如需所有支援的 C 和 C++ 延伸模組的完整清單,請參閱 Microsoft 特定的修飾詞。
您可以使用編譯程式選項,停用 C89 /Za
的大部分Microsoft特定擴充功能。 只有在您想要撰寫程式代碼以在需要符合 C89 的多個平台上執行時,才建議使用此選項。 如需編譯程式選項的詳細資訊 /Za
,請參閱 /Za
< /Ze
停用語言延伸模組>。 如需 C 和 C++ 編譯程式一致性的詳細資訊,請參閱 Microsoft C/C++ 語言一致性 和非 標準行為。
先行編譯標頭
Microsoft C 和 C++ 編譯器提供對任何 C 或 C++ 程式碼進行先行編譯的選項,包括內嵌程式碼。 您可以使用這項效能功能來編譯穩定的程式碼主體,並將程式碼的編譯狀態儲存在檔案中,然後在後續編譯期間,將先行編譯的程式碼與仍在開發中的程式碼結合。 由於穩定的程式碼不需要重新編譯,因此每個後續編譯的速度會更快。
根據預設,會在 pch.h 與 pch.cpp (在 Visual Studio 2017 與較舊版本中則為 stdafx.h 與 stdafx.cpp) 檔案中指定所有先行編譯的程式碼。 如需先行編譯標頭檔的詳細資訊,請參閱建立先行編譯標頭檔。
相關章節
如需詳細資訊,請參閱 在 Windows 上執行 Linux 程式。