#include <iostream>
#include <functional>
void foo() { std::cout << "hello world" << std::endl; }
void foo2(int a) { std::cout << "hello friend number " << a << std::endl; }
int main()
{
std::function<void()> functions[] = {
foo,
std::bind( foo2, 1 )
};
for( auto f : functions ) f();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8ZnVuY3Rpb25hbD4KCnZvaWQgZm9vKCkgeyBzdGQ6OmNvdXQgPDwgImhlbGxvIHdvcmxkIiA8PCBzdGQ6OmVuZGw7IH0KCnZvaWQgZm9vMihpbnQgYSkgeyBzdGQ6OmNvdXQgPDwgImhlbGxvIGZyaWVuZCBudW1iZXIgIiA8PCBhIDw8IHN0ZDo6ZW5kbDsgfQoKaW50IG1haW4oKQp7CiAgICBzdGQ6OmZ1bmN0aW9uPHZvaWQoKT4gZnVuY3Rpb25zW10gPSB7IAogICAgICAgZm9vLCAKICAgICAgIHN0ZDo6YmluZCggZm9vMiwgMSApCiAgICB9OwoJCiAgICBmb3IoIGF1dG8gZiA6IGZ1bmN0aW9ucyApIGYoKTsKfQoJ