std::array<char, N> std::string
Quel est le meilleur moyen de convertir à partir d'un std::array<char, N>
à un std::string
?
J'ai essayé de produire un modèle de méthode, mais n'ont eu aucune chance. Je pense que mon C++ compétences ne sont pas à la hauteur. Est-il un idiomatiques façon de le faire en C++?
OriginalL'auteur Jonathan Evans | 2012-06-05
Vous devez vous connecter pour publier un commentaire.
Je ne vais pas dire que c'est la "meilleure façon", mais un moyen est d'utiliser
std::string
's itérateur constructeur:std::array
a égalementbegin
etend
que les fonctions de membres.Ouais, je vais répondre à
std::string(arr.begin(), arr.end())
. Trop tard.Quelle est la différence?
et
std::end
sont destinés à être super générique, parce qu'ils travaillent sur intégré dans des tableaux, ainsi que quoi que ce soit avecbegin()
etend()
fonctions de membre.OriginalL'auteur
Si il y a une chaîne terminée par null dans le tableau afin:
string(const char* s, size_t n);
qui semble fonctionner même sans un terminateur null.OriginalL'auteur