C++ 无法使用<;文件系统>;功能

C++ 无法使用<;文件系统>;功能,c++,winapi,C++,Winapi,我正在编写一个小型win32应用程序,其中有一部分我将使用文件系统中的函数。在阅读了这篇文章和相关的例子之后,我似乎无法理解这段代码的编译过程 #include <iostream> #include <cstdint> #include <filesystem> namespace fs = std::filesystem; int main() { fs::path dir = fs::temp_directory_path(); fs

我正在编写一个小型win32应用程序,其中有一部分我将使用文件系统中的函数。在阅读了这篇文章和相关的例子之后,我似乎无法理解这段代码的编译过程

#include <iostream>
#include <cstdint>
#include <filesystem>

namespace fs = std::filesystem;

int main()
{
    fs::path dir = fs::temp_directory_path();
    fs::create_directories(dir / "abcdef/example");
    std::uintmax_t n = fs::remove_all(dir / "abcdef");
    std::cout << "Deleted " << n << " files or directories\n";
}
#包括
#包括
#包括
名称空间fs=std::filesystem;
int main()
{
fs::path dir=fs::temp_directory_path();
创建目录(dir/“abcdef/example”);
std::uintmax\u t n=fs::全部删除(dir/“abcdef”);
标准::cout
C++语言版本:ISO C++14标准(std:C++14)

库是在C++17中引入的。您需要更新编译器设置以使用C++17而不是C++14

C++语言版本:ISO C++14标准(std:C++14)


库是在C++17中引入的。您需要更新编译器设置以使用C++17而不是C++14。

直到C++17才将
文件系统
头添加到语言中。您需要指定
/std:C++17
标志,或
使用std::experimental::filesystem
(如Microsoft示例所示)。非常感谢您指出,在C++17之前,
文件系统
标头没有添加到语言中。您需要指定
/std:C++17
标志,或使用std::experimental::filesystem
指定
(如Microsoft示例所示)。非常感谢您为甲烷罐指出这一点,尽管我在任何文档中都没有看到,但可能是下一次,我将尝试检查是否存在这种情况details@Oyonde是一份表明这一点的文件。谢谢,虽然我在任何文件中都没有看到,但可能是下一次我将尝试检查这一点details@Oyonde是一份表明。