【C++】VScodeのC++設定で詰まったこと【備忘録】

VScodeC++の環境を構築する過程で,ヘッダのパス指定なんかにやたら手間取ったのでメモ

問題点

ヘッダのincludeの一部にエラーが出る.
pathが通ってないとのことなのでパスを追加.
vscode > c_cpp_properties.jsonに以下のようにいくつか追加.

"includePath": [
                "${workspaceFolder}/**",
                "C:/MinGW/include",
                "C:/MinGW/lib/gcc/mingw32/6.3.0/include",
                "C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++",
                "C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/mingw32"
            ],

その結果,includeのエラーは消えたが,今度はcincoutにエラーが出る.

identifier "cin" is undefined

using namespace std;を記述しているのに,うまく機能していないor認識していない.

解決策

いつものようにググったら以下が出てきた.
バグらしい.ほんとぉ?
とりあえず書いてある通りに,
設定からC_Cpp.intelliSenseEngineの項目をDefaultからTag Parserに変更.
するととりあえずエラーは消えた.

結局何が原因だったのかよく分からない. C_Cpp.intelliSenseEngineTag Parserにすることで,ヘッダの探索なんかをいい感じに適当にやってくれるので, 競合とかが起こりにくくなる,みたいな認識をしてます.

まとめ

とりあえず解決した.
間違ってたら教えてください.