C++98stlbeginner
std::minus
C++98 · The Foundation · Compiler flag: -std=c++98
Explanation
Subtracts one value from another.
Real-World Scenario
Calculate the difference in scores.
Quick Snippet
snippet.cpp
std::minus<int> sub; sub(5, 3);Full Example
minus.cpp
// CodeNebula - C++98 Example: std::minus
// Compile: g++ -std=c++98 -Wall -Wextra -o example minus.cpp
#include <iostream>
#include <functional>
#include <algorithm>
int main() {
int a[] = {50, 40, 30, 20, 10};
int b[] = {5, 10, 15, 20, 25};
int result[5];
// Element-wise subtraction: a[i] - b[i]
std::transform(a, a + 5, b, result, std::minus<int>());
std::cout << "Element-wise difference: ";
for (int i = 0; i < 5; ++i) std::cout << result[i] << " ";
std::cout << std::endl;
// Subtract constant from each element using bind2nd
int out[5];
std::transform(a, a + 5, out, std::bind2nd(std::minus<int>(), 5));
std::cout << "Each - 5: ";
for (int i = 0; i < 5; ++i) std::cout << out[i] << " ";
std::cout << std::endl;
// Subtract each element from constant using bind1st
std::transform(a, a + 5, out, std::bind1st(std::minus<int>(), 100));
std::cout << "100 - each: ";
for (int i = 0; i < 5; ++i) std::cout << out[i] << " ";
std::cout << std::endl;
return 0;
}
// Expected output:
// Element-wise difference: 45 30 15 0 -15
// Each - 5: 45 35 25 15 5
// 100 - each: 50 60 70 80 90
Run command
g++ -std=c++98 -Wall -Wextra -o example minus.cpp