最終更新日時: 2026年02月17日 23時22分33秒 (JST)
Akira Takahashi が更新

履歴 編集

function
<stack>

# std::stack::operator=

    stack& operator=(const stack& st);           // (1) C++03
    constexpr stack& operator=(const stack& st); // (1) C++26

    stack& operator=(stack&& st);           // (2) C++11
    constexpr stack& operator=(stack&& st); // (2) C++26

## 概要

コピーまたはムーブを行う事で、他の `stack` から `stack` を構築する。

## パラメータ

`st`: コピー・ムーブ元の `stack` オブジェクト

## 戻り値

`*this`

## 計算量

線形 O(n)。

## 例

    #include <iostream>
    #include <stack>

    int main()
    {
      std::stack<int> st0;
      std::stack<int> st1;

      // 要素を追加
      st0.push(1);
      st0.push(2);
      st0.push(3);

      // st1 に st0 を代入
      st1 = st0;

      // st1 の内容を表示
      while (!st1.empty()) {
        std::cout << st1.top() << " "; // 末尾要素を参照する
        st1.pop(); // 末尾要素を削除
      }
    }

### 出力

    3 2 1

## 関連項目

名前 | 説明
--- | ---
`(constructor)` | コンストラクタ

## 参照

- P3372R3 constexpr containers and adaptors