Maison > Questions et réponses > le corps du texte
Code :
string str(double dX, double dY)// Convertit les coordonnées vectorielles en chaîne, le format est "(x=, y=)"
{
return "(x=" + dX + ", y=" + dY + ")";
}
Message d'erreur :
L'expression doit contenir un type d'énumération entier ou sans portée
我想大声告诉你2017-06-05 11:13:01
Deux solutions courantes.
std::string v1(double dX, double dY) {
std::ostringstream stream;
stream << "(x=" << dX << ", y=" << dY << ")";
return stream.str();
}
std::string v2(double dX, double dY) {
char buff[1024];
sprintf(buff, "(x=%f, y=%f)", dX, dY);
return buff;
}
v2 peut déborder.
大家讲道理2017-06-05 11:13:01
c++11 fournit std::to_string pour la conversion de chaîne
Ou comme mentionné ci-dessus
std::string v1(double dX, double dY) {
std::ostringstream stream;
stream << "(x=" << dX << ", y=" << dY << ")";
return stream.str();
}
Selon la procédure de l'affiche originale, la conversion to_string est plus efficace.
Il est recommandé de renvoyer la chaîne const