#include <iostream>
#include <functional>

struct A {
	// Declare destructor to delete default move constructor
	~A() {}

    int a = 0;
};

void func(const A&)
{
    std::cout << "OK!" << std::endl;
}

int main() {
	A a;
	auto f = std::bind(&func, a);
	f();
}