OVH Cloud OVH Cloud

boost:function

14 réponses
Avatar
guillaume
bonjour,

j utilise actuellement boost::function/boost::bind. j aimerais savoir
si il est possible de faire quelque chose de semblable juste avec la
STL:

boost::function<int (int)> foo;
boost::function<int (int)> bar;
foo = boost::bind(&Test::foo,
&test,
_1);

bar = std::bind1st(std::mem_fun(&Test::foo),
&test);

std::cout << foo(41) << std::endl;
std::cout << bar(41) << std::endl;

donc concretement j aimerais remplacer le boost::function<in (int)> par
quelque chose de standard...

merci par avance,

--
Guillaume Desticourt

4 réponses

1 2
Avatar
guillaume
Il n'y a pas d'équivalent direct aussi flexible, sinon, ça ne serait pas
dans boost...



c est ce que je voulais savoir, merci.

Mais par contre, cette partie de boost a été accepté dans
le TR1 (technical report) du standard


pour ceux que ca interesserait j ai trouve ces docs sur le tr1:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf
http://gcc.gnu.org/onlinedocs/libstdc++/ext/tr1.html

cordialement,

--
Guillaume Desticourt

Avatar
loufoque
c est juste une dependance supplementaire...


Si tu embarques la bibliothèque alors ce n'est pas une dépendance.

Avatar
Jean-Marc Desperrier
guillaume wrote:
loufoque dixit :
Tu prends les sources et tu les copies.


donc je ne beneficierais plus des mises a jours de la lib, bof


Si tu utilise la tienne, tu en bénéficiera encore moins ...

boost::function intéresse beaucoup de monde, il y aura des gens qui
auront le temps/l'occasion de trouves des défauts et de faire évoluer.
La mise à jour aura le mérite d'exister même si tu auras besoin de
travail pour la réintégrer. Ta version n'intéressera que toi, et on peut
imaginer que l'occasion de faire des mises à jour sera bien plus limitée.


Avatar
guillaume
heu je ne dois decidement pas etre clair:
* je ne veux _rien_ implementer! *

j ai vu que std::bind1st pouvait remplacer boost::bind dans certain
cas, donc je voulais savoir si std::xxx pouvait remplacer
boost::function. (ce a quoi loic repond plus bas).
donc pas d implementation personnelle, pas de dependance, pas d
embarquement de lib qui me prive de mises a jour ou me cree du boulot d
integration, etc....

en esperant avoir ete clair,

--
Guillaume Desticourt
1 2