std::basic_spanstream<CharT,Traits>::basic_spanstream
explicit basic_spanstream( std::span<CharT> s, std::ios_base::openmode mode = std::ios_base::in | std::ios_base::out ); |
(1) | (since C++23) |
basic_spanstream( basic_spanstream&& rhs ); |
(2) | (since C++23) |
basic_spanstream( const basic_spanstream& ) = delete; |
(3) | (since C++23) |
Constructs a new basic_spanstream
.
1) Uses the storage referenced by
s
as initial underlying buffer of the wrapped
std::basic_spanbuf
device. The wrapped
std::basic_spanbuf
object is constructed as
basic_spanbuf<Char, Traits>(s, mode)
.
2) Move constructor. Move constructs the
std::basic_iostream
base subobject and the wrapped
std::basic_spanbuf
from those of
rhs
, and then calls
set_rdbuf
with the address of the wrapped
std::basic_spanbuf
in
*this
to install it.
3) Copy constructor is deleted.
basic_spanstream
is not copyable.
Parameters
s | - | std::span referencing the storage to be use as initial underlying buffer of stream |
||||||||||||||
mode | - | specifies stream open mode. Following constants and bit-wise OR between them may be used:
|
||||||||||||||
other | - | another basic_spanstream to be moved from |
Exceptions
May throw implementation-defined exceptions.
Example
See also
(C++23)
|
constructs a basic_spanbuf object (public member function of std::basic_spanbuf<CharT,Traits> ) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/io/basic_spanstream/basic_spanstream