Duplicata possible : Conversion de std::string en std::vector<char>
J'ai essayé:
std::string str = "hello"; std::vector<char> data; std::copy(str.c_str(), str.c_str()+str.length(), data);
mais ça ne marche pas=( Alors je me demande comment copier
std::string
dansstd::vector<char>
oustd::vector<uchar>
?
Réponses
Trop de publicités?std::vector
a un constructeur qui prend deux itérateurs. Tu peux utiliser ça :
std::string str = "hello";
std::vector<char> data(str.begin(), str.end());
Si vous avez déjà un vecteur et que vous souhaitez ajouter les caractères à la fin, vous avez besoin d'un back inserter :
std::string str = "hello";
std::vector<char> data = /* ... */;
std::copy(str.begin(), str.end(), std::back_inserter(data));
dasblinkenlight
Points
264350