Boost logo

Boost Users :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2004-01-23 10:32:34

Hossein Haeri wrote:
> Dear all,
> I've got a ternary function (which is std::find), and
> want to bind the first and second parameters (to the
> begining and the end of a std::vector). Then send the
> result to compose2 to check the equality for the end
> of the vector. Here is what I did:
> copy_if(istream_iterator<Terminal>(cin),
> istream_iterator<Terminal>(),
> back_inserter(temp),
> compose2(equal<set<Terminal>::iterator>(),
> bind1st(bind1st_3(ptr_fun(f), V_.begin()),
> V_.end()),
> V_.end())));
> (I've prepared any goodie needed by ternary functions
> for the above statement: ptr_fun, bind1st_3, ...)
> Dev-C++ (GCC 3.3.2 I think), gives me several
> errors (including "Reference to Reference" problem),
> and I'm nearly convinced not to continue it this way.
> Now, how do you, boost guys, do that?

You probably need

    boost::bind(f, V_.begin(), V_.end(), _1),

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at