最終更新日時: 2025年08月11日 15時35分16秒 (JST)
suomesta が更新

履歴 編集

function template
<spanstream>

# std::swap (非メンバ関数)(C++23)

    namespace std {
    template<class CharT, class Traits>
    void swap(basic_spanstream<CharT, Traits>& x,
              basic_spanstream<CharT, Traits>& y);
    }

## 概要

2つの`basic_spanstream`オブジェクトを入れ替える。

## 効果

`x.swap(y)`

## 例

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

    int main()
    {
      char buf1[32] = "first";
      char buf2[32] = "second";
      std::spanstream ss1{std::span<char>(buf1)};
      std::spanstream ss2{std::span<char>(buf2)};

      // スワップ
      std::swap(ss1, ss2);

      std::cout << ss1.span().data() << std::endl;
      std::cout << ss2.span().data() << std::endl;
    }

### 出力

    second
    first

## バージョン

### 言語

- C++23

### 処理系

- Clang: ??
- GCC: ??
- Visual C++: ??