#include <VectorArithmetic.h>
Mixin to provide vector space arithmetics to a container.
| T | The contained element value type | 
| TDerived | The container which inherits this class | 
| Incrementable | A flag to activate increment and decrement operators | 
In addition to vector space arithmetic operators, this mixin provides generate() and apply() to apply a function to each element.
Public Member Functions | |
Data modifiers  | |
| TDerived & | operator+= (const TDerived &rhs) | 
| V += U and W = V + U.  | |
| TDerived & | operator+= (const T &rhs) | 
| V += a, V = U + a, V = a + U.  | |
| TDerived & | operator-= (const TDerived &rhs) | 
| V -= U and W = V - U.  | |
| TDerived & | operator-= (const T &rhs) | 
| V -= a, V = U - a, V = a - U.  | |
| TDerived & | operator*= (const T &rhs) | 
| V *= a, V = U * a, V = a * U.  | |
| TDerived & | operator/= (const T &rhs) | 
| V /= a, V = U / a.  | |
| template<typename TFunc , typename... TContainers> | |
| TDerived & | generate (TFunc &&func, const TContainers &... args) | 
| Generate values from a function with optional input containers.  More... | |
| template<typename TFunc , typename... TContainers> | |
| TDerived & | apply (TFunc &&func, const TContainers &... args) | 
| Apply a function with optional input containers.  More... | |
Operations  | |
| TDerived | operator+ () const | 
| Copy.  | |
| TDerived | operator- () const | 
| Compute the opposite.  | |