Предыдущий пост -
Следующий пост -

std::ptr_fun.

Рубрика: functional, Дата: 12 July, 2013, Автор:
Tags: ,

Ну эта фигня такая не сильно понятная, она функцию левую применяет ко всем членам объекта, видимо делает функцию применимую ко всем членам, как то адаптирует ее что ли. Функция левая.

Сразу примерчик приведу. Конечно не сильно понятно что эта фигня делает, как то смутно.

Да токо прочитал перевод, эта функция конвертирует функцию указатель в функциональный объект.

#include <iostream>
using std::cout;
using std::endl;
#include <algorithm>
using std::transform;
#include <functional>
using std::ptr_fun;
#include <numeric>
using std::accumulate;

int main()
{
	char* mass[]={"10","20","30","40"};
	int mass1[4];

	transform(mass,mass+4,mass1,ptr_fun(atoi));

	int sum=accumulate(mass1,mass1+4,0);

	cout <<"sum= "<<sum<<endl;//100

	return 0;
}

[youtube]http://www.youtube.com/watch?v=fPX73ch_c_8[/youtube]

rss