最終更新日時(UTC): 2025年07月11日 17時16分44秒
Koichi Murase が更新

履歴 編集

function
<valarray>

# std::valarray::operator!

    ValOrProxy<bool> operator!() const;

## 概要

各要素の論理NOTをとる。

## 戻り値

以下のコードと等価のことを行う：

    valarray<bool> result(size());
    for (std::size_t i = 0; i < size(); ++i) {
      result[i] = !(*this)[i];
    }
    return result;

## 備考

- 戻り値の型 `ValOrProxy` は、`valarray`、あるいは、その代理となる型である。
  `<valarray>` の概要も参照のこと。

## 例

    #include <cassert>
    #include <valarray>

    int main()
    {
      const std::valarray<bool> va = {true, false, true};

      std::valarray<bool> result = !va;
      assert(!result[0]);
      assert(result[1]);
      assert(!result[2]);
    }

### 出力