std::basic_spanstream
std::basic_spanstream (고정 버퍼 입출력 스트림)
고정 크기 버퍼 기반 스트림에 대한 입력·출력 연산을 구현하는 클래스 템플릿이에요. C++23부터 있어요.
출처: cppreference
본문
<spanstream> 헤더에 정의돼 있어요.
template<
class CharT,
class Traits = std::char_traits<CharT>
> class basic_spanstream
: public basic_iostream<CharT, Traits>;
클래스 템플릿 std::basic_spanstream은 고정 크기 버퍼 기반 스트림에 대한 입력·출력 연산을 구현해요. 저수준에서는 std::basic_spanbuf의 원시 장치 구현을 std::basic_iostream의 고수준 인터페이스로 감싸요. 고유 std::basic_spanbuf 멤버에 대한 완전한 인터페이스를 제공해요.
공통 문자 타입 typedef
std::spanstream—std::basic_spanstream<char>std::wspanstream—std::basic_spanstream<wchar_t>
멤버 함수
- (constructor) — spanstream을 생성해요(선택적으로 span으로 초기화).
- span — 기본 버퍼의
std::span을 얻거나 설정해요. - rdbuf — 기반 spanbuf에 접근해요.
- operator= — 이동 대입.
예제
#include <spanstream>
#include <iostream>
int main()
{
char buf[64]{};
std::spanstream ss(std::span<char>(buf));
ss << "Hello, spanstream!";
std::cout << buf << '\n'; // "Hello, spanstream!"
}