首頁  >  文章  >  後端開發  >  我應該在 VSCode C 開發的'c_cpp_properties.json”和'task.json”中指定包含路徑嗎?

我應該在 VSCode C 開發的'c_cpp_properties.json”和'task.json”中指定包含路徑嗎?

Susan Sarandon
Susan Sarandon原創
2024-11-22 01:08:13362瀏覽

Should I Specify Include Paths in Both `c_cpp_properties.json` and `task.json` for VSCode C   Development?

VSCode C 任務配置:包含路徑和函式庫

c_cpp_properties.json 和 task.json的使用

中VSCode,IntelliSense利用c_cpp_properties.json的includePath來定位標頭用於自動完成的檔案。然而,在編譯程式碼時,開發人員經常遇到需要在task.json中明確指定包含路徑的情況。

查詢1:C任務的適當配置

應該包含在 c_cpp_properties.json 和 task.json 中指定的目錄和庫嗎?答案是肯定的,因為建置系統和編輯器在 VSCode 中獨立運行,都需要存取此資訊。

建議:

維持跨建置環境的可移植性,最好避免直接在task.json中指定包含路徑。相反,請考慮使用可以從命令列呼叫並在 task.json 中引用的單獨建置系統。

查詢2:了解includePath 和瀏覽

VSCode 提供用於解釋C 程式碼的兩個系統:已棄用的「標籤解析器」和較新的「Intellisense」。 includePath 由 Intellisense 使用,而 browser.path 由標籤解析器使用。

建議:

為了獲得最佳準確性和相容性,我們強烈建議在「設定」中停用標籤解析器→ C/C → 智慧感知引擎。將引擎設為“預設”,您將確保 Intellisense 處理 C 解釋。

範例配置:

提供的c_cpp_properties.json 使用必要的配置來設定IntelliSense include paths:

{
    "configurations": [
        {
            ...
            "includePath": [
                "${workspaceFolder}/**",
                "D:/github/dependencies/SDL2-2.0.8/include"
            ],
            ...
        }
    ],
    ...
}

,配置為呼叫GNU Make實用程序,看起來像這樣:
{
    ...
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "make",
            "args": []
        }
    ],
    ...
}

結論:

在 c_cpp_properties.json 和 task.json 中雙重包含包含路徑是必要的VS 代碼。然而,利用專用的建置系統並優先考慮智慧感知而不是標籤解析器將極大地增強您的 C 開發體驗。

以上是我應該在 VSCode C 開發的'c_cpp_properties.json”和'task.json”中指定包含路徑嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn