## 5.3 ブール型の vector

ビット値の vector (ブール 1/0 値) は、標準 C++ ライブラリでは特別な場合として処理されるため、値を複数の要素とともに効率よく 1 語にパックすることができます。ブール型の vector、vector<bool> の演算は、実装だけを効率的にした、通常の vector の演算のスーパーセットです。

ブール型の vector データ型に追加された新しいメンバー関数は `flip()` です。この関数が呼び出されると、vector のすべてのビットが反転します。また、ブール型の vector は、`flip()` メンバー関数もサポートする内部値への参照として戻ります。

    vector<bool> bvec(27);
    bvec.flip();               // すべての値を反転させる
    bvec[17].flip();           // ビット 17 を反転させる

また、vector<bool> は、1 組の参照によって示される値の交換を可能にする追加メンバー関数 `swap()` もサポートします。

    bvec.swap(bvec [17], bvec [16]);

Copyright (c) 1998, Rogue Wave Software, Inc.
このマニュアルに関する誤りのご指摘やご質問は、電子メールにてお送りください。
OEM リリース, 1998 年 6 月