Kod: string str(double dX, double dY)// Tukar koordinat vektor kepada rentetan, formatnya ialah "(x=, y=)"
{ return "(x=" + dX + ", y=" + dY + ")"; }
Mesej ralat: Ungkapan mesti mengandungi integer atau jenis enum tidak berskop
Dua penyelesaian biasa.
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 mungkin melimpah.
c++11 menyediakan std::to_string untuk penukaran rentetan
Atau seperti yang dinyatakan di atas
std::string v1(double dX, double dY) { std::ostringstream stream; stream << "(x=" << dX << ", y=" << dY << ")"; return stream.str(); }
Mengikut prosedur poster asal, penukaran to_string adalah lebih cekap.
Adalah disyorkan untuk mengembalikan rentetan const
Dua penyelesaian biasa.
v2 mungkin melimpah.
sertakan<rentetan>
c++11 menyediakan std::to_string untuk penukaran rentetan
Atau seperti yang dinyatakan di atas
Mengikut prosedur poster asal, penukaran to_string adalah lebih cekap.
Adalah disyorkan untuk mengembalikan rentetan const