简单的数据透视表在c ++中显示? (不是完整的数据透视表功能)

时间:2017-11-08 03:17:35

标签: c++ algorithm stl

我正在编写一个程序来制作学校计算机的清单。

我有一个班级Equip,其中包含2个字符串作为变量成员m_ownerm_type

我有一个vector<Equip> v充满了一堆物品装备。

我使用 csv 文件作为我程序的参数来填充矢量。

v包含5个对象:

Equip e1("LaboA", "laptop");
Equip e2("LobaA", "server");
Equip e3("HR", "printer");
Equip e4("LobaA", "laptop");
Equip e5("LobaC", "router");

我正在尝试以数据透视表的形式显示v的内容,如下面的屏幕截图所示:

image

我尝试了以下内容:

void matrix(const vector<Equip>& v)
{
    vector<Equip> tmp = v;
    sort(tmp.begin(), tmp.end());
    vector<Equip>::iterator it = unique(tmp.begin(), tmp.end(), SameOwner()); 
    tmp.resize(std::distance(tmp.begin(), it));

    for(auto i = tmp.begin(); i != tmp.end(); ++i)
    {
        int j = count_if(v.begin(), v.end(), IsPrinter());
        cout << i->getOwner() << " : " << j << endl;
    }
}

我已经编写了所有方法,因此代码编译并执行,但它没有按照我想要的方式执行。

我理解为什么,但我不明白如何做到这一点。

你能告诉我如何实现这一目标吗?我在这里不知所措。

谢谢,

学家

0 个答案:

没有答案