The easiest way to create a binder1st is not to call the constructor explicitly, but instead to use the helper function bind1st.
Example Finds the first nonzero element in a list.list<int> L; ... list<int>::iterator first_nonzero = find_if(L.begin(), L.end(), bind1st(not_equal_to<int>(), 0)); assert(first_nonzero == L.end() || *first_nonzero != 0);Definition Defined in the standard header functional, and in the nonstandard backward-compatibility header function.h. Template parameters Parameter Description Default AdaptableBinaryFunction The type of the binary function whose first argument is being bound to a constant. Model ofAdaptable Unary Function Type requirementsAdaptableBinaryFunction must be a model of Adaptable Binary Function. Public base classes
unary_function<AdaptableBinaryFunction::second_argument_type, AdaptableBinaryFunction::result_type>Members Member Where defined Description argument_type Adaptable Unary Function The type of the function object's argument, which is AdaptableBinaryFunction::second_argument_type result_type Adaptable Unary Function The type of the result: AdaptableBinaryFunction::result_type
result_type operator()(const argument_type& x) constAdaptable Unary Function Function call. Returns F(c, x), where F and c are the arguments with which this binder1st was constructed.
binder1st(const AdaptableBinaryFunction& F, AdaptableBinaryFunction::first_argument_type c)binder1st See below
template <class AdaptableBinaryFunction, class T> binder1st<AdaptableBinaryFunction> bind1st(const AdaptableBinaryFunction& F, const T& c);binder1st See below New members These members are not defined in the Adaptable Unary Function requirements, but are specific to binder1st. Member Description
binder1st(const AdaptableBinaryFunction& F, AdaptableBinaryFunction::first_argument_type c)The constructor. Creates a binder1st such that calling it with the argument x (where x is of type AdaptableBinaryFunction::second_argument_type) corresponds to the call F(c, x).
template <class AdaptableBinaryFunction, class T> binder1st<AdaptableBinaryFunction> bind1st(const AdaptableBinaryFunction& F, const T& c);If F is an object of type AdaptableBinaryFunction, then bind1st(F, c) is equivalent to binder1st<AdaptableBinaryFunction>(F, c), but is more convenient. The type T must be convertible to AdaptableBinaryFunction::first_argument_type. This is a global function, not a member function. Notes
[1] Intuitively, you can think of this operation as "binding" the first argument of a binary function to a constant, thus yielding a unary function. This is a special case of a closure.
See also The function object overview, binder2nd, Adaptable Unary Function, Adaptable Binary Function STL Main PageRetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4