Skip to content. Skip to navigation

ICTP Portal

You are here: Home Manuals on-line PGI Compiler pgC_lib multiplies
Personal tools
Document Actions


Click on the banner to return to the class reference home page.


Function Object


A binary function object that returns the result of multiplying its first and second arguments.

Data Type and Member Function Indexes
(exclusive of constructors and destructors)




template <class T>
struct multiplies : binary_function<T, T, T> {
  typedef typename binary_function<T, T, T>::second_argument_type  
  typedef typename binary_function<T, T, T>::first_argument_type 
  typedef typename binary_function<T, T, T>::result_type result_type;
  T operator() (const T&, const T&) const;


multiplies is a binary function object. Its operator() returns the result of multiplying x and y. You can pass a multiplies object to any algorithm that uses a binary function. For example, the transform algorithm applies a binary operation to corresponding values in two collections and stores the result. multiplies would be used in that algorithm in the following manner:

vector<int> vec1;
vector<int> vec2;
vector<int> vecResult;
transform(vec1.begin(), vec1.end(),
          vec2.begin(), vec2.end(),
          vecResult.begin(), multiplies<int>());

After this call to transform, vecResult(n) will contain vec1(n) times vec2(n).


If your compiler does not support default template parameters, then you need to always supply the Allocator template argument. For instance, you will have to write :

vector<int, allocator<int> >

instead of :


See Also

binary_function, Function Objects

©Copyright 1996, Rogue Wave Software, Inc.

Powered by Plone This site conforms to the following standards: