dcsimg
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: C++
Expertise: Intermediate
Jul 23, 1999

WEBINAR:

On-Demand

Building the Right Environment to Support AI, Machine Learning and Deep Learning


Forward-Declaring I/O Classes and Templates

The standard header <iosfwd> contains forward-declarations of the I/O classes and templates. This header is sufficient to refer to any of the I/O classes and templates but not to apply operation to them. For example:

 
#include 
using namespace std;

class C{
public:
  friend ostream& operator<<(ostream& os, const C& d); 
};

ostream& operator<<(ostream& os, const C& d);

The declaration of the friend function does not need a complete definition of the ostream class; a forward declaration is sufficient in this case. Therefore, <iosfwd> is #included instead of the full-blown <iostream>, which significantly reduces compilation time.

Danny Kalev
 
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