#include <functional>
#include <iostream>

struct s {
int n;
void f( char const *a ) { std::cout << n << " foo " << a << '\n'; }
void b( char const *a ) { std::cout << n << " bar " << a << '\n'; }
};

int main() {
s object{ 4 };
auto ptmf = &s::f;
auto fn = std::bind( ptmf, object, std::placeholders::_1 );
fn( "quack" );
}