|
Boost Users : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-11-15 09:28:46
gast 128 wrote:
> Dear all,
>
> Probably this is something one does not encounter often, but I have here
> an interface which expects more arguments than needed, e.g.:
>
> void SomeInterface(boost::function<void (Arg1, Arg2)> fcCallback)
> {}
>
> now I have another functor like:
> boost::function<void (Arg1)> fc;
>
> I want fc apply to SomeInterface, and it only needs to fill in argument1.
>
> So I need something like boost::bind(fc, _1, _2) to get it compilable for
> SomeInterface, only bind now thinks that fc has a prototype of two
> arguments. Is there a way to tell bind to ignore argument2 (without
> explicit write a functor)?
I believe the result of
bind(fc, _1)
would happily accept two arguments, discarding the second. As an extreme
example:
void do_nothing() {}
int r;
bind(do_nothing)(r, r, r, r, r, r);
works fine.
- Volodya
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net