web-dev-qa-db-fra.com

VS2017: l'espace de noms E0135 "std" n'a pas de membre "système de fichiers"

Pour pouvoir utiliser: std :: filesystem à partir de la bibliothèque C++ 17, mon projet a été migré de vs2015 à vs2017.

Mon projet se compile et s'exécute sans erreur, la bibliothèque est incluse sans erreur, mais lorsque j'essaie d'utiliser std :: filesystem, j'obtiens ce qui suit:

enter image description here

Il semble que la bibliothèque ne soit pas incluse mais ne vois pas pourquoi pas?

Modifier:

Microsoft Visual Studio Enterprise 2017

VisualStudio.15.Release/15.7.3+27703.2026

Visual C++ 2017 00369-90000-00000-AA466

Microsoft Visual C++ 2017

20
LearnMore

Quelques options à explorer.

  • Vérifiez la norme de langue. Vous avez besoin de C++ 17 ou supérieur: enter image description hereenter image description here
  • Si votre version de Visual Studio ne prend pas en charge std::filesystem encore, vous pouvez essayer std::experimental::filesystem.

J'ai la version suivante et std::filesystem fonctionne (avec la sélection de langue C++ 17 indiquée ci-dessus):

Microsoft Visual Studio Community 2017 Preview
Version 15.8.0 Preview 1.1
VisualStudio.15.Preview/15.8.0-pre.1.1+27705.2000
22
wally