24 Şubat 2016 Çarşamba

std::plus

Giriş
Metodun içi şöyle.
struct plus {
    template <typename A, typename B>
    auto operator()(const A& a, const B& b) const { return a + b; }
};
Direkt olarak şöyle kullanırız.
#include <functional>
#include <iostream>

int main()
{
   int a = 5;
   int b = 1;
   std::cout << std::plus<int>{}(a, b) << '\n';
}
Functor olarak şöyle kullanırız.
std::transform (v.begin(), v.end(), v1.begin(), foo.begin(), std::plus<int>());
Tabi lambda ile bence bütün bu functor'ların pabucu dama atıldı.

Hiç yorum yok:

Yorum Gönder