示例#1
0
文件: arrayMap.cpp 项目: nodakai/exp
static void doTest(ArrayMap<Foo> &am, Map &m, int k, int v)
{
    cout << "Updating with (" << k << ", " << v << ")" << endl;
    am.set(k, am.get(k) + v);
    m[k] = m[k] + v;

    set<int> visited;
    for (int i = 0; i < 10000; ++i) {
        if (visited.end() != visited.find(i)) continue;

        visited.insert(i);
        const int kk = am.minKey() + ::rand() % ((am.maxKey() - am.minKey()) * 2);
        const int r1 = am.get(kk), r2 = m[kk];
        if (r1 != r2) {
            cerr << "For " << kk << ": am -> " << r1 << " != " << r2 << " <- m" << endl;
        }
    }
}