From 20415f4ca2ec82ebcee4924ff5fba0869ca43fc5 Mon Sep 17 00:00:00 2001 From: sam-astro <77079540+sam-astro@users.noreply.github.com> Date: Wed, 5 Jan 2022 10:45:29 -0500 Subject: [PATCH] Changed to const references and added warning --- Slang/eval.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Slang/eval.cpp b/Slang/eval.cpp index 873f073..9fd9af6 100644 --- a/Slang/eval.cpp +++ b/Slang/eval.cpp @@ -9,7 +9,7 @@ #include "strops.h" using namespace std; -float precedence(char op) { +float precedence(const char& op) { if (op == '+' || op == '-') return 1; if (op == '*' || op == '/') @@ -19,20 +19,22 @@ float precedence(char op) { return 0; } -float applyOp(float a, float b, char op) { +float applyOp(const float& a, const float& b, const char& op) { switch (op) { case '+': return a + b; case '-': return a - b; case '*': return a * b; case '/': return a / b; case '^': return pow(a, b); + default: LogWarning("operator \'" << op << "\' does not exist"); } + return 0; } // Function that returns value of // expression after evaluation. -float evaluate(string tokens) { - tokens = replace(tokens, " ", ""); +float evaluate(const string& t) { + tokens = replace(t, " ", ""); float i;