Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: C++
Expertise: Intermediate
May 24, 2006

Making Complex Arrays

Sometimes you need a vector or list of associations. An association is a pair of values that has some link in the problem model. For example, a student and grade are associated with each other.

Suppose you want to maintain the grade of each student. You need a list of all the students together with their grades. This can be done by using <pair>, which is simply a struct with two values.

Here's the basic building block of a map:

vector<pair<string,int> > stu_gra;
string stu;
int gra;
   cin >> stu >> gra;
   stu_gra.push_back(pair<string,gra>(stu,gra) );
} while (stu != "end");
When you want to retrieve the values stored in the vector (or list) of pairs, you write:
vector<pair<string,int> > :: iterator i = stu_gra.begin();
while(i != stu_gra.end())
   cout << "Student : " << i->first << ", Grade : " << i->second << endl;
The first and second members are used to access the respective elements of pair.

Sunil Kidambi
Thanks for your registration, follow us on our social networks to keep up-to-date