table of contents
        
      
      
    | std::multiplies(3) | C++ Standard Libary | std::multiplies(3) | 
NAME¶
std::multiplies - std::multiplies
Synopsis¶
 Defined in header <functional>
  
   template<> (since C++14)
  
   class multiplies<void>;
  
   std::multiplies<void> is a specialization of std::multiplies with
    parameter and
  
   return type deduced.
Member functions¶
 operator() returns the product of two arguments
  
   (public member function)
std::multiplies<void>::operator()
  
   template< class T, class U >
  
   constexpr auto operator()( T&& lhs, U&& rhs ) const
  
   -> decltype(std::forward<T>(lhs) * std::forward<U>(rhs));
  
   Returns the product of lhs and rhs.
Parameters¶
lhs, rhs - values to multiply
Return value¶
std::forward<T>(lhs) * std::forward<U>(rhs).
Example¶
// Run this code
  
   #include <complex>
  
   #include <functional>
  
   #include <iostream>
  
   int main()
  
   {
  
   auto complex_multiplies = std::multiplies<void>{}; //
    “void” can be omitted
  
   constexpr std::complex z1{1.0, 2.0}, z2{3.0, 4.0};
  
   std::cout << std::showpos
  
   << complex_multiplies(z1, z2) << ' ' << z1 * z2 <<
    '\n'
  
   << complex_multiplies(z1, 5.) << ' ' << z1 * 5. <<
    '\n'
  
   << complex_multiplies(5., z1) << ' ' << 5. * z1 <<
    '\n';
  
   }
Output:¶
 (-5,+10) (-5,+10)
  
   (+5,+10) (+5,+10)
  
   (+5,+10) (+5,+10)
| 2024.06.10 | http://cppreference.com |