Mit boost::bind mit einem Konstruktor

Ich versuche, neue Objekte zu erstellen, und fügen Sie zu einer Liste von Objekten mit boost::bind. Zum Beispiel.

struct Stuff {int some_member;};
struct Object{
    Object(int n);
};
....
list<Stuff> a;   
list<Object> objs;
....
transform(a.begin(),a.end(),back_inserter(objs), 
  boost::bind(Object,
     boost::bind(&Stuff::some_member,_1)
  )
);

Diese scheint nicht zu funktionieren. Gibt es eine Möglichkeit zu nutzen, einen Konstruktor mit boost::bind, oder sollte ich versuchen eine andere Methode?

  • Was macht du damit "arbeiten"? es ist nicht kompiliert oder die Liste ist nicht besiedelt?
  • Som-code, der wirklich kompiliert helfen würde. Was ist "a" - es scheint, haben Sammlung beginnen & end-Methoden, aber auch some_member?
  • jon, das war ein Fehler meinerseits. Es ist jetzt behoben. Dewfy, der code nicht kompilieren.
InformationsquelleAutor Dan Hook | 2009-08-26
Schreibe einen Kommentar