#include <iostream>
#include <string>
#include <sstream>
using namespace std;
template <typename Number>
void
String_To_Number( std::string & outstring, const Number number )
{
ostringstream outstream;
outstream << number;
outstring += outstream.str();
}
int main( void )
{
unsigned int age = 233;
string turtle = "The age of my turtle Dolly is ";
String_To_Number( turtle, age );
turtle += ".";
cout << turtle << endl;
long years = 500000000;
string star = "This star chrashed into the sun ";
String_To_Number( star, years );
star += " ago.";
cout << star << endl;
double meter = 5.78;
string room = "This room is ";
String_To_Number( room, meter );
room += " meters high.";
cout << room << endl;
unsigned short midday = 12;
string lunch = "We have lunch at ";
String_To_Number( lunch, midday );
lunch += " a.m.";
cout << lunch << endl;
string example = "That were exactly ";
String_To_Number( example, 4 );
example += " examples.";
cout << example << endl;
return 0;
}