How can I bind to a function that takes default arguments, without specifying the default arguments and then call it without any arguments?
void foo(int a, int b = 23) {
  std::cout << a << " " << b << std::endl;
}
int main() {
  auto f = std::bind(foo, 23, 34); // works
  f();
  auto g = std::bind(foo, 23); // doesn't work
  g();
  using std::placeholders::_1;
  auto h = std::bind(foo, 23, _1); // doesn't work either 
  h();
}
 
     
     
     
     
     
    