Skip to content

Latest commit

 

History

History
76 lines (58 loc) · 1.42 KB

File metadata and controls

76 lines (58 loc) · 1.42 KB

span

  • spanstream[meta header]
  • std[meta namespace]
  • basic_spanbuf[meta class]
  • function[meta id-type]
  • cpp23[meta cpp]
std::span<charT> span() const noexcept; // (1)

void span(std::span<charT> s) noexcept; // (2)
  • std::span[link /reference/span/span.md]

概要

固定長バッファの取得または設定をする。

効果

  • (1) : std::span 型の固定長バッファを取得する
  • (2) : std::span 型の固定長バッファ s を設定する

#include <iostream>
#include <span>
#include <spanstream>

int main()
{
  char buf1[32] = "default";
  std::span<char> span1{buf1};
  std::spanbuf sb{span1};

  // (1)
  std::span<char> read = sb.span();

  std::cout << "(1)" << std::endl;
  std::cout << read.data() << std::endl;
  std::cout << std::endl;

  char buf2[32] = "overwritten";
  std::span<char> span2{buf2};

  // (2)
  sb.span(span2);

  std::cout << "(2)" << std::endl;
  std::cout << sb.span().data() << std::endl;
}
  • sb.span();[color ff0000]
  • sb.span(span2);[color ff0000]
  • std::span[link /reference/span/span.md]
  • span()[link span.md]
  • data()[link /reference/span/span/data.md]

出力

(1)
default

(2)
overwritten

バージョン

言語

  • C++23

処理系