diff options
Diffstat (limited to 'impl/Operator.hpp')
-rw-r--r-- | impl/Operator.hpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/impl/Operator.hpp b/impl/Operator.hpp index e8d6ca7..64ef096 100644 --- a/impl/Operator.hpp +++ b/impl/Operator.hpp @@ -1,6 +1,7 @@ #ifndef OPERATOR_HPP #define OPERATOR_HPP +#include <cassert> #include <vector> template<typename Domain> @@ -47,8 +48,7 @@ struct Minimum : public Operator<Domain> { template<typename Domain> struct Negation : public Operator<Domain> { virtual Domain eval(const std::vector<Domain>& arguments) const { - if (arguments.size() > 1) - throw "Too many arguments to a negation."; + assert(arguments.size() == 1); return -arguments[0]; } void print(std::ostream& cout) const { @@ -95,7 +95,7 @@ template<typename Domain> struct Multiplication : public Operator<Domain> { virtual Domain eval(const std::vector<Domain>& arguments) const { Domain result = 1; - for (auto it = arguments.begin(), + for (typename std::vector<Domain>::const_iterator it = arguments.begin(), end = arguments.end(); it != end; ++it) { |