Comment puis-je construire un std::string à partir d'un DWORD?
J'ai code suivant:
Tools::Logger.Log(string(GetLastError()), Error);
GetLastError()
renvoie une DWORD
une valeur numérique, mais le constructeur de std::string
ne pas accepter un DWORD
.
Que puis-je faire?
(Déplacé de non-réponse) Lire La Chaîne de Formatage de Manor Farm par Herb Sutter. C'est une bonne comparaison des différentes manières de convertir des données de chaînes de caractères, y compris les std::stringstream, Boost::lexical_cast, sprintf, snprintf, et std::strstream.
OriginalL'auteur | 2009-05-21
Vous devez vous connecter pour publier un commentaire.
Vous souhaitez lire sur ostringstream:
Si vous oubliez #include <succession> vous obtiendrez un étrange message d'erreur: "erreur: l'agrégation" std::ostringstream ... "a type incomplète et ne peut pas être défini". Solution Simple.
La plupart des réponses ont obtenu exactement un downvote. Pourrait-il être quelqu'un downvoted chaque réponse, mais leur propre? Malheureusement, il n'y a plus d'un suspect 🙂
Ils doivent être l'un des haut-rep des gens. Je me demande où tout ça Jon Skeet rep va...
OriginalL'auteur Doug T.
Vous voulez convertir un nombre d'une
string
:Ou
boost::lexical_cast
:OriginalL'auteur Johannes Schaub - litb
Utilisation de Boost
lexical_cast
pour les cas simples comme ci-dessus:OriginalL'auteur Konrad Rudolph
Depuis C++11
std::to_string()
surcharges pour lesint
,long
,long long
,unsigned int
,unsigned long
,unsigned long long
,float
,double
, etlong double
.Oui, je suis un fan de
auto
.Pour utiliser votre exemple:
Oui, voir la la page que j'ai référencé. Je ne suis pas C# expert il pourrait donc y avoir des différences mineures.
OriginalL'auteur Max Truxa
Vous pouvez utiliser STLSoft's winstl::int_to_string(), comme suit:
Aussi, si vous voulez la recherche de la forme d'une chaîne de code d'erreur, vous pouvez utiliser STLSoft de winstl::error_desc.
Il y avait un tas d'articles dans Dr Dobb's sur ce il y a quelques années: pièces un, deux, trois, quatre. Va dans le sujet en grande détail, en particulier sur la performance.
OriginalL'auteur dcw
Utiliser std::stringstream.
OriginalL'auteur Benoît
ce que j'ai l'habitude de le faire est:
OriginalL'auteur PiNoYBoY82
Comme tous les gars ici suggéré, la mise en œuvre permettra d'utiliser stringstream.
Dans mon projet actuel, nous avons créé la fonction
pour créer des chaînes de n'importe quelle source.
Donc, dans notre projet, il serait
Une telle utilisation de flux de la manière proposée ne serait pas passer mon examen à moins que quelqu'un l'envelopper.
Aimez-vous à quoi il ressemble? Pouvez-vous préciser pour travailler avec des doubles. Pour le travail avec votre propre type qui ne peut pas être utilisé avec le cours d'eau?
OriginalL'auteur Mykola Golubyev