Как описано выше, я хочу использовать std::bind
для создания функции, которая при вызове возвращает объект, созданный с помощью конструктора с параметрами по умолчанию, как показано ниже:
#include <functional>
class X
{
int x_, y_;
public:
X(int x, int y): x_(x), y_(y)
{
}
};
int main() {
auto fun = std::bind(&X::X, 1, 2);
X x = fun();
}
Вместо этого я получаю следующееошибки компилятора:
ошибка: квалифицированная ссылка на 'X' - это имя конструктора, а не тип в этом контексте
ошибка: ожидается '(' для приведения типа функции или типаконструкция По ссылке на эту строку:
auto fun = std::bind(&X::X, 1, 2);