std::ptr_fun
![]() | This page has been machine-translated from the English version of the wiki using Google Translate. The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
template<class Arg, class Result > std::pointer_to_unary_function<Arg,Result> | (1) | (obsolète) |
template<class Arg1, class Arg2, class Result > std::pointer_to_binary_function<Arg1,Arg2,Result> | (2) | (obsolète) |
Creates a function wrapper object (either std::pointer_to_unary_function or std::pointer_to_binary_function), deducing the target type from the template arguments.
1)You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
This function and the related types are deprecated as of C++11 in favor of the more general std::function and std::ref, both of which create callable adapter-compatible function objects from plain functions.
Sommaire |
[modifier]Paramètres
f | - | pointer to a function to create a wrapper for |
[modifier]Retourne la valeur
A function object wrapping f
.
[modifier]Exceptions
You can help to correct and verify the translation. Click here for instructions.
[modifier]Exemple
#include <string>#include <iostream>#include <algorithm>#include <functional>bool isvowel(char c){returnstd::string("aeoiuAEIOU").find(c)!=std::string::npos;}int main(){std::string s ="Hello, world!";std::copy_if(s.begin(), s.end(), std::ostreambuf_iterator<char>(std::cout), std::not1(std::ptr_fun(isvowel)));// C++11 alternatives: // std::not1(std::ref(isvowel)));// std::not1(std::function<bool(char)>(isvowel))); }
Résultat :
Hll, wrld!