小编guo*_*ing的帖子

C++ 11 vector <bool>性能问题(带代码示例)

我注意到在运行以下代码时,向量比bool数组慢得多.

int main() 
{
    int count = 0;
    int n = 1500000;
    // slower with c++ vector<bool>
    /*vector<bool> isPrime;
    isPrime.reserve(n);
    isPrime.assign(n, true);
    */
    // faster with bool array 
    bool* isPrime = new bool[n];

    for (int i = 0; i < n; ++i)
        isPrime[i] = true;


    for (int i = 2; i< n; ++i) {
        if (isPrime[i])
            count++;
        for (int j =2; i*j < n; ++j )
            isPrime[i*j] = false;
    }

    cout <<  count << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

有什么方法可以让我vector<bool> …

c++ performance vector bitvector c++11

21
推荐指数
3
解决办法
4690
查看次数

标签 统计

bitvector ×1

c++ ×1

c++11 ×1

performance ×1

vector ×1