Myślę, że to dość proste pytanie. Chciałbym konkretnie użyć std::get_time
, ale wymaga to pewnego rodzaju strumienia do użycia. Przekazuję dane w string_view
i chcę uniknąć kopiowania tylko w celu przeanalizowania daty.
c++
c++17
stringstream
Bartek Banachewicz
źródło
źródło
std::basic_string_view_stream
;-) Nie jestem pewien, czy można uniknąć kopiowania. Może Howard zna sztuczkę.std::strstream
mogą to zrobić.boost::string_view
. Pytanie jest jednak nadal aktualne.Odpowiedzi:
Możesz to zrobić z łatwością dzięki bibliotece Boost.Iostreams:
Powinieneś być w stanie to zrobić z
std::stringstream
istd::basic_stringbuf<CharT,Traits,Allocator>::setbuf
a C ++ standardowy nieudana swoje wymagania:źródło
Alternatywne rozwiązanie bez Boost.IOstream (gdy nie możesz go użyć). Opiera się na rozszerzeniu std :: basic_streambuf i std :: basic_istream.
źródło