A C++ calculator that can parse expressions with parentheses, operators, functions and constants. It works by converting the initial expression from infix to postfix notation (also known as Reverse Polish notation), and then parsing that to get the result.
To add custom constants, see ConstantHandler.cpp
To add custom functions, see FunctionHandler.cpp
To add custom operators, see OperatorHandler.cpp