
bind(f, 1);
Yeah, but that doesn't quite fit the bill! Ultimately I'm doing this for each member of a range, via std algorithm, so I need to bind a unary argument to produce a nullary function object, which I can then pass to an evaluation context, ie my g( ) function. If I've generated the function object with bind and placeholder(s), it seems there's no way to prevent the binding of the last placeholder from triggering evaluation, when what I require is an unevaluated nullary function object.
I don't understand why you need a placeholder there. Could you provide a trivial example that demonstrates what you mean exactly? Again, the following creates a nullary functor. void f( int i ) {} auto functor = boost::bind(&f, 12345); // it can be now invoked: functor();