Boost logo

Boost Users :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2004-11-15 09:33:09


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)?

Yes there is, just tell it so: bind(fc, _1) is as close to "I want fc apply
to SomeInterface, and it only needs to fill in argument1" as it can get. ;-)
You can also use bind(fc, _2) if you want to pass Arg2 to fc and ignore
Arg1.


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