Auxiliary Arithmetic Algorithms

Functions

template<typename InputIterator , typename OutputIterator >
void aaa::logical_not (InputIterator first_in, InputIterator last_in, OutputIterator first_out)
 
template<typename Container1 , typename Container2 >
void aaa::logical_not (const Container1 &in, Container2 &out)
 
template<typename Container >
Container aaa::logical_not (const Container &in)
 

Detailed Description

Example:

std::vector<bool> in1 = { true, false, true, false };
std::valarray<bool> in2 = { true, false, true, false };
std::array<bool, 6> in3 = { true, false, true, false, true, false };
std::vector<bool> out = { true, false, true, false };
using namespace aaa;
out = logical_not(in1); // Same type of containers.
logical_not(in2, out); // Mixed type of containers.
logical_not(begin(in3) + 1, begin(in3) + 5, begin(out)); // Ranges of iterators.