Излишне объяснять. Следующий код является самоочевидным:
struct X
{
    X(int n){}
};
int main()
{
    std::vector<int> src;
    std::vector<X>   dest;
    // Below is not valid in current C++, but that is just what I want.
    transform(src.begin(), src.end(), back_insert(dest), std::bind(&X::X, _1)); 
}
Конструктор принимает некоторые аргументы и возвращает объект класса конструктора.
Конструктор выглядит как функция, действует как функция и является точно функцией.
Итак, я думаю, std:: bind должен равномерно обрабатывать конструкторы и другие вызываемые объекты.
Однако, как я могу расширить шаблон функции "bind", чтобы реализовать это?
