はじめに
こんにちは、かべです。先日 C++ で競プロ用ツールを書いていた時にタイトルのことで少しハマったため解決法について書きます。
環境
- WSL Ubuntu 20.04
- Visual Studio Code 1.64.2
- g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
問題
C++17 から使用できるようになった filesystem を利用してコードを書いていると、VSCode からエラーが検出されました。
C++17 が使えるか確認するために g++ --std c++17 ...
でビルドと実行をしてみましたが特に問題なく動きます。恐らく VSCode 側で何か問題があるのでしょうが、クイックフィックスなどでは解決できませんでした。
解決策
こちらが解決策です。拡張機能 C/C++ の設定にある cppstandard からデフォルト値を目的のバージョンにすることで補完などがちゃんと効いてくれるようになります。
おしまい。