Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
HP.com home

HP C++ User Documentation

 

modulus (3C++std) - Tru64 UNIX

Standard C++ Library
Copyright 1996, Rogue Wave Software, Inc.

NAME

  modulus  - Returns the remainder obtained by dividing the first argument by
  the second argument.

SYNOPSIS

  #include<functional>

    template <class T>
    struct modulus : public binary_function<T, T, T> ;

DESCRIPTION

  modulus is a binary function object.  Its operator() returns the remainder
  resulting from of x divided by y.  You can pass a modulus object to any
  algorithm that requires a binary function.  For example, the transform
  algorithm applies a binary operation to corresponding values in two
  collections and stores the result.  modulus 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(),
           vecResult.begin(), modulus<int>());

  After this call to transform, vecResult(n) will contain the remainder of
  vec1(n) divided by vec2(n).

INTERFACE

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

WARNING

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

  vector<int, allocator<int> >

  instead of

  vector<int>

SEE ALSO

  binary_function, function object

STANDARDS CONFORMANCE

  ANSI X3J16/ISO WG21 Joint C++ Committee
About PDF files: The PDF files on this site can be read online or printed using Adobe® Acrobat® Reader. If you do not have this software on your system, you may download it from Adobe's website.
Privacy statement Using this site means you accept its terms C++ support
© 2008 Hewlett-Packard Development Company, L.P.