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

履歴 編集

function
<set>

# std::set::empty

    bool empty() const;                        // (1) C++03
    bool empty() const noexcept;               // (1) C++11
    [[nodiscard]] bool empty() const noexcept; // (1) C++20
    constexpr bool empty() const noexcept;     // (1) C++26

## 概要

コンテナが空かどうかをテストする。
`set` コンテナが空（`size()` が 0）の場合に `true` を返す。

この関数はコンテナ内のコンテンツを変化させない。コンテンツをクリアするには `clear()` メンバを使う。

## 戻り値

コンテナサイズが 0 のときに `true`, そうでないときに `false`。

## 計算量

定数時間。

## 例

    #include <iostream>
    #include <set>

    int main ()
    {
      std::set<int> c;

      std::cout << c.empty() << std::endl;

      c.insert(42);

      std::cout << c.empty() << std::endl;
    }

### 出力

    1
    0

## 関連項目

名前 | 説明
--- | ---
`insert` | 要素を挿入する
`(constructor)` | コンストラクタ

## 参照

- P0600R1 `[[nodiscard]]` in the Library
  - C++20で`[[nodiscard]]`が付加された
- P2422R1 Remove `nodiscard` annotations from the standard library specification
  - C++26で`[[nodiscard]]`指定が削除された
- P3372R3 constexpr containers and adaptors