File: vector_bool.cpp

package info (click to toggle)
yrmcds 1.0.4-6
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 924 kB
  • ctags: 1,346
  • sloc: cpp: 9,634; sh: 133; makefile: 97
file content (22 lines) | stat: -rw-r--r-- 696 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <algorithm>
#include <cassert>
#include <iostream>
#include <vector>

void foo() {
    std::vector<bool> vb(30);
    //std::fill(vb.begin(), vb.end(), true);
    assert( std::none_of(vb.begin(), vb.end(), [](bool b){return b;}) );
    vb[3] = true;
    assert( ! std::none_of(vb.begin(), vb.end(), [](bool b){return b;}) );
    assert( std::any_of(vb.begin(), vb.end(), [](bool b){return b;}) );
    assert( ! std::all_of(vb.begin(), vb.end(), [](bool b){return b;}) );
    std::fill(vb.begin(), vb.end(), true);
    assert( std::all_of(vb.begin(), vb.end(), [](bool b){return b;}) );
}

int main(int argc, char** argv) {
    for( int i = 0; i < 10; ++i )
        foo();
    return 0;
}