Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Beginner
Aug 19, 2002

Use typedefs when the Template Parameter List Contains Another


Suppose you have the class given below:
 
#include <list>
#include <map>

std::list<std::pair<int,int>> list_of_pairs;

In the above definition, the template argument for list is another template class namely, pair. The above definition won't compile. For ex, VC++ 6.0 gives the following error:
 
syntax error : missing ',' before identifier 'list_of_pairs'

The correct way to declare the above is by using a typedef as given below:
 
typedef std::pair<int,int> int_pair;
std::list<int_pair> list_of_pairs;
Rajesh Chathapuram
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

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