如何将char的向量转换为stringstream

Rah*_*s12 3 c++ vector stringstream

是否可以将char矢量转换为std::stringstream?例如:

std::vector<unsigned char> data;
std::stringstream st(????);
Run Code Online (Sandbox Code Playgroud)

有没有通过,我可以指定任何有价值的方式datast

Bar*_*rry 11

如果我们看一下std::stringstream构造函数,我们会看到第二个是:

explicit basic_stringstream( const std::basic_string<CharT,Traits,Allocator>& str,
                ios_base::openmode mode = ios_base::in|ios_base::out );
Run Code Online (Sandbox Code Playgroud)

并且构造函数basic_string包括:

template< class InputIt >
basic_string( InputIt first, InputIt last, 
              const Allocator& alloc = Allocator() );
Run Code Online (Sandbox Code Playgroud)

因此,我们可以做到:

std::vector<unsigned char> data(20);

std::stringstream st(std::string(data.begin(), data.end()));
Run Code Online (Sandbox Code Playgroud)