2016-01-25 18 views
7

Dzięki C++ 11, po długim związku z boostem, ostatnim komponentem, od którego zależę, jest system plików. std :: system plików wydaje się być zaimplementowany jako eksperymentalny zgodnie z linkiem: Filesystem libraryKtóre kompilatory obsługują std :: filesystem?

Ponieważ naśladuje system boost :: files, mogę z łatwością dostosować mój projekt do standardowego i pozbyć się ogromnej zależności uzależnienia. Które kompilatory go obsługują i czy byłoby ważne, aby z niego korzystać, mimo że jest eksperymentalny, ponieważ naśladuje podbicie (ponieważ nie ma harmonogramu, kiedy będzie on standaryzowany)?

+3

MSVC jest jedyną, której jestem świadomy, co jest bardzo dobrym powodem do dalszego korzystania z Boost.Filesystem. – ildjarn

Odpowiedz

10
  • Visual Studio dostarczało różne wersje biblioteki systemów plików dla kilku wydań. Uważam, że VS 2013 był pierwszym, który go uwzględnił.
  • libstdC++ dostarczył bibliotekę systemu plików w ramach wydania 5.3.
  • libC++ ma bibliotekę systemów plików w opracowaniu, ale nie będzie częścią nadchodzącej wersji 3.8.

Należy pamiętać, że std::experimental::filesystem nie jest jeszcze częścią standardu C++, ale raczej zdefiniowane w specyfikacji technicznej. Oznacza to, że mogą ulec zmianie, zanim staną się częścią standardu. (dlatego są w przestrzeni nazw)

+1

VS2012 wysłał go jako pierwszy, ale ta implementacja była naprawdę zbyt przerażająca. – ildjarn

+3

Implementacja LibC++ * będzie * częścią wydania 3.9. –

Powiązane problemy