Вставка уникальных данных в вектор

У меня есть следующие данные:

FolioA Name1 100
FolioA Name2 110
FolioA Name3 100
FolioB Name1 100
FolioB Name3 106
FolioC Name1 108
FolioC Name2 102
FolioC Name3 110

Я хочу вставить только уникальные имена (, т.е. Имя1, Имя2 и Имя3, каждое по одному разу )в

std::vector<std::string> name;

по мере того, как я перебираю данные.

Итак, у меня есть следующий код, в котором я сохранил данные на карте с именем test:

std::map<std::string, std::map<std::string, double> >test;
std::map<std::string, std::map<std::string, double > >::iterator it1 = test.begin(), end1 = test.end();
    while (it1 !=end1) {
        std::map<std::string, double>::iterator it2 = it1->second.begin(), end2=it1->second.end();
        **name.push_back(it2->first);**
        ++it2;
    }
    ++it1;
}

Но в настоящее время, вставляя данные в имя так, как я имею 3 экземпляра Name1, 2 экземпляра Name2 и 3 экземпляра Name3, что и ожидается от моего кода. Как мне исправить это, чтобы иметь только уникальные имена.

22
задан chema989 2 March 2017 в 06:17
поделиться