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: Intermediate
May 27, 2004

Help the Compiler Differentiate Between a Type or Non-type Expression

Sometimes you need to help the compiler differentiate between a type expression and a non-type expression. For example:

template <class type>
void func (type t)
{
t::Str * p;
}
Now, say t represents a class type and Str represents a type member of that class. If you meant to declare a pointer of that type, the compiler will assume this expression as multiplication until the template is instantiated. So to help the compiler know this type expression, you can do this:
	
template <class type>
void func (type t)
{
typename t::Str * p;
}
Saurabh Ramya
 
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