Syntaxe std::for_each et pointeur sur fonction membre
Bonjour à tous !
Voilà je souhaiterais pouvoir ajouter les éléments d'un boost::array<char, size> à la fin d'un objet de type std::string à l'aide de la fonction membre std::string::push_back et ceci en utilisant la fonction std::for_each. Ce qui me pose problème c'est la syntaxe du troisième paramètre. En faisant quelques recherches sur le net je suis tombé sur la bibliothèque <functional> mais elle ne répond pas exactement à mon besoin car elle surtout utilisée (d'après ce que j'ai compris) pour appeler des fonctions membres d'un "type d'objet" et non d'un objet instancié (je ne sais pas si j'ai bien réussi à me faire comprendre).
Un bout de code aidera surement à la compréhension de ce long discours :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
#include <string>
#include <algorithm>
#include "boost/array.hpp"
int main(void)
{
boost::array<char, 128> array;
// remplissage du tableau avec des valeurs quelconques
std::string str;
str.reserve(128);
std::for_each(array.begin(), array.end(), /* et la ça coince je souhaite appeler la fonction membre
push_back de l'objet instancié str, dois-je abandonner
cette idée et repasser à une méthode moins élégante avec un for,
ou existe il une solution ? */);
return (0);
} |
Merci d'avance
Cordialement
Matarc