2012-10-24 2 views
1

J'ai une classe et l'une de ses fonctions est de taper des informations à l'aide des fonctions précédentes.Ajouter et renvoyer une chaîne

string printResult() 
{ 
    string result; 

    cout<<"\n"<<getName()<<" bla bla bla "<<getPoints()<<" blabla."; 

    return result; 
} 

Où getName et getPoints sont évidemment ces autres fonctions.

Ma question est: Comment dois-je refaire/modifier cette partie

cout<<"\n"<<getName()<<" bla bla bla "<<getPoints()<<" blabla."; 

pour devenir une chaîne de son propre que je peux revenir, avec ce contenu exact?

Répondre

5

Utilisez un stringstream

#include <sstream> 

string printResult() 
{ 
    ostringstream result; 

    result<<"\n"<<getName()<<" bla bla bla "<<getPoints()<<" blabla."; 

    return result.str(); 
} 
+0

Oh détiennent sur, que worked.Just que j'ai oublié de changer ailleurs dans le code pour obtenir together.Thanks un tas. =) – user1770094

0

Vous pouvez simplement utiliser l'append() membre de std :: string:

result.append(getName()); 
result.append(getPoints()); 

En supposant ces fonctions renvoient une chaîne ou un char *.

Questions connexes