[英]Visual Studio Code cannot open source file "iostream"
我是 C++ 和 Visual Studio Code 的新手,所以我不確定如何解決這個問題。 我已經通過在 Visual Studio Code 中使用 Clang 中的教程嘗試了 go,但我似乎無法在沒有iostream 、 vector和string錯誤的情況下粘貼他們的“ Hello, World! ”代碼。
我還看到這里的帖子指出我應該更改配置中的includePath字符串數組,但是將路徑添加到我的項目文件夾似乎並沒有消除這些錯誤。 我在這里不知所措,因為到目前為止我所看到的一切仍然無法正常工作。
導致這些錯誤的代碼已直接從上面的教程中復制粘貼:
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};
for (const string& word : msg)
{
cout << word << " ";
}
cout << endl;
}
在前三行中,我收到錯誤"cannot open source file {the included import's name}"
。 編譯器指出:
#include 檢測到錯誤。 請更新您的 includePath。 此翻譯單元禁用波浪線 (/Users/rjc/projects/helloworld/helloworld.cpp).C/C++(1696)
我在我的 includePath 中添加了這一行(配置頁面聲明每行添加一個 includePath,所以我將這兩個語句放在不同的行中):
${workspaceFolder}/**
/Users/rjc/projects/helloworld/
然而,這並沒有減少錯誤的數量。 我不太確定在這里做什么,因為教程似乎對我不起作用。
我正在運行帶有 Clang 版本 12.0.0 的macOS 11.1 (Big Sur)。 為什么我會有這些問題?
您的 includePath 只有${workspaceFolder}
。 您需要將路徑添加到系統目錄。 運行此命令並確保打印出的所有路徑都列在您的c_cpp_properties.json文件中: gcc -v -E -x c++ -
確保compilerPath
設置中的編譯器存在並且它支持 C++。
我看到這些標准庫在( CentOS )系統上包含錯誤,該系統安裝了GCC而沒有 C++ 支持。 安裝缺少的打包修復了 Visual Studio Code 中的錯誤。 無法從終端編譯 hello.cpp 表明我的根本問題不在 Visual Studio Code 中。
您只需在c_cpp_properties.json
文件中更改 3 次。
“名稱”:“Mac”
將“usr/include/linux”添加到“includePath”
“intelliSenseMode”:“clang-x64”
此解決方案僅適用於 Linux 用戶。
在 Ubuntu 上,我安裝了不同的 gcc/g++ 版本。
檢查你的 c++ 版本
c++ -v
檢查目錄/usr/include/c++
,如果它缺少相應的版本(10/ 或 11/ 或 12/),請安裝它sudo apt install libstdc++-XX
。 我必須安裝libstdc++-12
sudo apt install libstdc++-12
我有同樣的問題,我正在嘗試任何事情來讓它工作。
然后我意識到,當我命名文件時,我只將其命名為helloworld而不是helloworld.cpp ,因為在我一直使用的其他 IDE 中不需要它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.