IntelliSense 組態
使用此編輯器來編輯基礎 c_cpp_properties.json 檔案中定義的 IntelliSense 設定。在此編輯器中進行的變更只會套用到選取的組態。若要一次編輯多個組態,請前往 c_cpp_properties.json。
設定名稱
識別組態的易記名稱。
Linux
、Mac
及 Win32
是特殊識別項,適用於會在這些平台上自動選取的組態。選取組態檔以編輯內容。
|
|
編譯器路徑
用於建置專案的編譯器完整路徑 (例如
/usr/bin/gcc
),其可讓 IntelliSense 更加精準。該延伸模組將會查詢編譯器,決定要用於 IntelliSense 的系統 include 路徑與預設的定義。
指定編譯器路徑,或從下拉式清單中選取偵測到的編譯器路徑。
編譯器引數
用來修改所使用之包含或定義的編譯器引數,例如
-nostdinc++
、-m32
等。採用其他空格分隔引數的引數應在陣列中輸入為個別的引數,例如,針對 --sysroot <arg>
使用 "--sysroot", "<arg>"
。每行一個引數。
IntelliSense 模式
要使用的 IntelliSense 模式 (對應到 MSVC、gcc 或 Clang 的平台及架構變體)。如果未設定或設為
${default}
,延伸模組會選擇該平台的預設。Windows 預設為 windows-msvc-x64
、Linux 預設為 linux-gcc-x64
、macOS 預設為 macos-clang-x64
。選取特定的 IntelliSense 模式可覆寫 ${default}
模式。僅指定 <compiler>-<architecture>
變體 (例如 gcc-x64
) 的 IntelliSense 模式即為舊版模式,會依據主機平台自動轉換為 <platform>-<compiler>-<architecture>
變體。
包含路徑
include 路徑是包含來源檔案所含之標頭檔 (例如
#include "myHeaderFile.h"
) 的資料夾。請為 IntelliSense 引擎指定搜尋所含標頭檔時所要使用的路徑清單。這些路徑不會重複搜尋。若要重複搜尋,請指定 **
。例如 ${workspaceFolder}/**
會搜尋所有子目錄,而 ${workspaceFolder}
不會。若在安裝了 Visual Studio 的 Windows 上,或在 compilerPath
設定中指定了編譯器,就無須在此清單中列出系統的 include 路徑。
每行一個包含路徑。
定義
剖析檔案時,IntelliSense 引擎要使用的前置處理器定義清單。可使用
=
來設定值,例如 VERSION=1
。每行一個定義。
C 標準
用於 IntelliSense 的 C 語言標準版本。注意: GNU 標準僅會用於查詢設定編譯器以取得 GNU 定義,而 IntelliSense 將會模擬相同的 C 標準版本。
C++ 標準
用於 IntelliSense 的 C++ 語言標準版本。注意: GNU 標準僅會用於查詢設定編譯器以取得 GNU 定義,而 IntelliSense 將會模擬相同的 C++ 標準版本。
組態提供者
可為來源檔案提供 IntelliSense 設定資訊 VS Code 延伸模組的識別碼。例如,使用 VS Code 延伸模組識別碼
ms-vscode.cmake-tools
從 CMake 工具延伸模組提供組態資訊。Windows SDK 版本
要在 Windows 上使用的 Windows SDK 包含路徑版本,例如
10.0.17134.0
。Mac 架構路徑
供 IntelliSense 引擎在 Mac 架構中搜尋包含的標頭時使用的路徑清單。僅支援 macOS 設定。
每行一個路徑。
強制包含
處理來源檔案中的任何其他字元前,應包含的檔案清單。檔案會包含在列出的清單中。
每行一個檔案。
點設定
Kconfig 系統所建立之 .config 檔案的路徑。Kconfig 系統會產生具有建置專案之所有定義的檔案。使用 Kconfig 系統的專案範例為 Linux 核心與 NuttX RTOS。
編譯命令
工作區
compile_commands.json
檔案的完整路徑。系統會使用在這個檔案中找到的 include 路徑和 define,而不是為 includePath
與 defines
設定所指定的值。如果在編譯命令資料庫中,對應到您在編輯器中開啟之檔案的編譯單位,沒有任何項目,就會出現警告訊息,而延伸模組會改為使用 includePath
和 defines
設定。
合併設定
當為
true
(或核取) 時,合併包含路徑、定義和強制包含來自設定提供者的路徑。
瀏覽: 路徑
供標籤剖析器在搜尋原始程式檔包含的標頭時使用的路徑清單。若省略,就會使用
includePath
當作 path
。根據預設,會在這些路徑進行遞迴搜尋。指定 *
來指示非遞迴搜尋。例如: /usr/include
會在所有子目錄中搜尋,但 /usr/include/*
不會。
每行一個瀏覽路徑。
瀏覽: 將符號限制為包含的標頭
若為
true
(或已選取),標籤剖析器只會剖析 ${workspaceFolder}
中原始程式檔直接或間接包含的程式碼檔。若為 false
(或未選取),標籤剖析器會剖析在 Browse: path
清單中的指定路徑找到的所有程式碼檔。
瀏覽: 資料庫檔案名稱
產生符號資料庫路徑。這會指示延伸模組將標籤剖析器的符號資料庫儲存在工作區預設儲存位置以外的某處。如果指定了相對路徑,就會是相對於工作區預設儲存位置 (非工作區資料夾本身) 的路徑。
${workspaceFolder}
變數可用於指定相對於工作區資料夾的路徑 (例如 ${workspaceFolder}/.vscode/browse.vc.db
)。