为什么我还必须使用 -lstdc++fs?
Why Must I Still Use -lstdc++fs?
有几个关于获取experimental/filesystem
to compile in the latest versions of GCC and Clang:
的问题
但现在 filesystem
has been accepted into c++17 所以不再需要 experimental
或 -lstdc++fs
标志,对吧?
错误 我什至不能 #include <filesystem>
在 clang++
或 g++
的头部版本上试穿: http://melpon.org/wandbox
我还需要其他参数吗? -lstdc++fs
只是给了我 experimental
版本,我怎样才能包含正式接受的版本?
C++ 标准中没有指定您必须调用编译器的确切方式。我想这取决于实现来决定,因此可能仍然需要 -lstdc++fs
.
请注意,C++17 尚未正式成为标准,实现可能已经实现也可能尚未实现。即使 C++17 最终成为标准,这也不会神奇地改变实现。它甚至没有定义实现应该或不应该要求的链接器标志。完全不相关。
如何在 C++17 成为标准并且您的实现开始支持它之后包含正式接受的版本,完全是 implementation-specific。我们可能只需要等待,看看结果如何。
有几个关于获取experimental/filesystem
to compile in the latest versions of GCC and Clang:
但现在 filesystem
has been accepted into c++17 所以不再需要 experimental
或 -lstdc++fs
标志,对吧?
错误 我什至不能 #include <filesystem>
在 clang++
或 g++
的头部版本上试穿: http://melpon.org/wandbox
我还需要其他参数吗? -lstdc++fs
只是给了我 experimental
版本,我怎样才能包含正式接受的版本?
C++ 标准中没有指定您必须调用编译器的确切方式。我想这取决于实现来决定,因此可能仍然需要 -lstdc++fs
.
请注意,C++17 尚未正式成为标准,实现可能已经实现也可能尚未实现。即使 C++17 最终成为标准,这也不会神奇地改变实现。它甚至没有定义实现应该或不应该要求的链接器标志。完全不相关。
如何在 C++17 成为标准并且您的实现开始支持它之后包含正式接受的版本,完全是 implementation-specific。我们可能只需要等待,看看结果如何。