Development C++ Tutorial

//Revised from
//STL Tutorial and Reference Guide C++ Programming with the Standard Template L
ibrary, 2nd Edition
//by David R. Musser (Author), Atul Saini (Author)
//# Publisher: Addison-Wesley Pub (Sd) (March 1996)
//# Language: English
//# ISBN-10: 0201633981
//# ISBN-13: 978-0201633986
#include 
#include 
#include 
using namespace std;
template 
T accumulate1(InputIterator first, InputIterator last, T init, T (*binary_funct
ion)(T x, T y)) // New parameter
{
  while (first != last) {
    init = (*binary_function)(init, *first);
    ++first;
  }
  return init;
}
int multfun(int x, int y) { return x * y; }
int main()
{
  int x[5] = {2, 3, 5, 7, 11};
  vector vector1(&x[0], &x[5]);
  int product = accumulate1(vector1.begin(), vector1.end(), 1, &multfun);
  cout << product << endl;
  return 0;
}
2310