Skip to content

@crmne /unique_insert_with_ids.cpp

Embed URL


Subversion checkout URL

You can clone with
Download ZIP
This is how you can insert elements in a container, without repetition, and obtaining unique ids. Useful for inserting vertexes in Boost.Graph. See
#include <iostream>
#include <string>
#include <map>
using namespace std;
int main (int argc, char const *argv[])
string array[] = { "zero", "one", "one", "zero", "two", "three", "zero" };
map<string, unsigned int> numbers;
for(size_t i = 0; i < 7; ++i)
pair<string, unsigned int> p(array[i], numbers.size());
int id = numbers.insert(p).first->second;
cout << array[i] << "\t" << id << endl;
return 0;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.