Mem_fun и bind1st проблема
мы следующие класс:
class A {
public:
// ctr and etc ...
A* clone(B* container);
};
Сейчас я'веvector availableObjs
уже заселены. Я хочу позвонитьclone
на каждом из них, так и вставьте клонированные объекты в новый контейнерclonedObjs
типаvector
, Я'Я пытаюсь следовать - но это не такт компилировать:
transform(availableObjs.begin(), availableObjs.end(), back_inserter(clonedObjs),
bind1st(mem_fun(&A::clone), container)); // container is of type B*
Есть ли легкий выход? Я'Мы много классифицируем как A - так что сделать каждого из них функтором - слишком сложная задача.