std::menos en C++

Clase de objeto de función binaria cuya llamada devuelve el resultado de restar su segundo argumento de su primer argumento (como lo devuelve el operador binario -).

Sintaxis:

template  struct minus : binary_function  
{
  T operator() (const T& x, const T& y) const {return x-y;}
};

Template parameters :
T - Type of the arguments and return type of the functional call.
    The type shall support the operation (binary operator-).

Member types :
x : Type of the first argument in member operator()
y : Type of the second argument in member operator()
result_type : Type returned by member operator()
// C++ program to illustrate std::minus
// by subtracting all array elements from a number
#include <bits/stdc++.h>
  
int main()
{
    // Array with elements to be subtracted
    int arr[] = { 10, 20, 30 };
  
    // size of array
    int size = sizeof(arr) / sizeof(arr[0]);
  
    // Variable from which array is to be subtracted
    int num = 100;
  
    // Variable to store result
    int result;
  
    // using std::accumulate to perform subtraction on array from num
    // using std::minus
    result = std::accumulate(arr, arr + size, num, std::minus<int>());
  
    // Printing the result
    std::cout << "The result of 100-10-20-30 is " << result;
  
    return 0;
}

Producción:

The result of 100-10-20-30 is 40

Otro ejemplo:

// C++ program to illustrate std::minus
// by subtracting the respective elements of 2 arrays
#include <iostream> // std::cout
#include <functional> // std::plus
#include <algorithm> // std::transform
  
int main()
{
    // First array
    int first[] = { 100, 200, 300, 400, 500 };
  
    // Second array
    int second[] = { 10, 20, 30, 40, 50 };
  
    // Result array
    int results[5];
  
    // std::transform applies std::minus to the whole array
    std::transform(first, first + 5, second, results, std::minus<int>());
  
    // Printing the result array
    for (int i = 0; i < 5; i++)
        std::cout << results[i] << " ";
  
    return 0;
}

Producción:

90 180 270 360 450

Este artículo es una contribución de Rohit Thapliyal . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *