c++ - Bagaimana untuk menukar koordinat vektor kepada rentetan dalam format "(x=, y=)"
过去多啦不再A梦
过去多啦不再A梦 2017-06-05 11:11:01
0
2
1275

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

过去多啦不再A梦
过去多啦不再A梦

membalas semua(2)
我想大声告诉你

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.

大家讲道理

sertakan<rentetan>

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

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan