SORU
7 Kasım 2008, Cuma


c tamsayı->std::string dönüştürme. Basit bir fonksiyon?

Sorun: bir tam sayı var; bu tamsayı stl dönüştürülmesi gerekir::string türü.

Geçmişte, stringstream bir dönüşüm yapmak için kullandım, ve o sadece biraz hantal. C yolu ** 5, ama daha ziyade typesafe olduğunu C bir yöntem yapardım(er) bir ilgisi olduğunu biliyorum.

Daha iyi bir yolu bunu yapmak için vardır?

İşte geçmişte kullanılan stringstream yaklaşım:

std::string intToString(int i)
{
    std::stringstream ss;
    std::string s;
    ss << i;
    s = ss.str();

    return s;
}

Tabii ki, bu kadar yazılmış:

template<class T>
std::string t_to_string(T i)
{
    std::stringstream ss;
    std::string s;
    ss << i;
    s = ss.str();

    return s;
}

Ancak, bu kavramı var oldukça 'ağır' uygulaması.

Zan çağırma oldukça güzel, ancak olduğunu kaydetti:

std::string s = t_to_string(my_integer);

Her neyse, hoş bir yol... güzel olurdu.

İlgili:

Alternative to itoa() for converting integer to string C ?

CEVAP
2 Aralık 2011, Cuma


Şimdi c 11

#include <string>
string s = std::to_string(123);

Başvuru için Link: http://en.cppreference.com/w/cpp/string/basic_string/to_string

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Floortile83

    Floortile83

    16 Ocak 2010
  • International Secret Agents Concerts

    Internationa

    2 Aralık 2008
  • YouplusmeVEVO

    YouplusmeVEV

    4 EYLÜL 2014