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
Dec 14, 2001

The Storage Type of Temporaries


A temporary object is destroyed at the end of the full expression in which it was created. Consider the following example:
 
#include <string>
#include <cstring> // for strlen()

string s1, s2;
int len=(s1+s2).c_str(); // temporary created 

When the expression 's1+s2' is evaluated, C++ creates a temporary object that stores the result. C++ destroys the temporary only after the 'nearest semicolon'. In our example, only after the c_str() call and the assignment to len have taken place does C++ destroy the temporary object. Remember that temporary objects are always allocated on the stack. Therefore, you should never attempt to destroy them explicitly.
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