Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Birli işlev nesnesi sağlayan türetilmiş sınıflar tarafından devralınabilecek türleri tanımlayan boş bir temel yapı.
Sözdizimi
struct unary_function
{
typedef Arg argument_type;
typedef Result result_type;
};
Açıklamalar
Şablon yapısı, formunun result_type operator()( constargument_type& ) constüye işlevini tanımlayan sınıflar için bir temel görevi görür.
Bu tür türetilmiş tekli işlevlerin tümü tek bağımsız değişken türüne argument_type ve dönüş türüne result_type olarak başvurabilir.
Örnek
// functional_unary_function.cpp
// compile with: /EHsc
#include <vector>
#include <functional>
#include <algorithm>
#include <iostream>
using namespace std;
// Creation of a user-defined function object
// that inherits from the unary_function base class
class greaterthan10: unary_function<int, bool>
{
public:
result_type operator()(argument_type i)
{
return (result_type)(i > 10);
}
};
int main()
{
vector<int> v1;
vector<int>::iterator Iter;
int i;
for (i = 0; i <= 5; i++)
{
v1.push_back(5 * i);
}
cout << "The vector v1 = ( " ;
for (Iter = v1.begin(); Iter != v1.end(); Iter++)
cout << *Iter << " ";
cout << ")" << endl;
vector<int>::iterator::difference_type result1;
result1 = count_if(v1.begin(), v1.end(), greaterthan10());
cout << "The number of elements in v1 greater than 10 is: "
<< result1 << "." << endl;
}
The vector v1 = ( 0 5 10 15 20 25 )
The number of elements in v1 greater than 10 is: 3.