C++ stack for multiple data types (RPN vector calculator)
- by Arrieta
Hello:
I have designed a quick and basic vector arithmetic library in C++. I call the program from the command line when I need a rapid cross product, or angle between vectors. I don't use Matlab or Octave or related, because the startup time is larger than the computation time. Again, this is for very basic operations.
I am extending this program, and I will make it work as an RPN calculator, for operations of the type:
1 2 3
4 5 6
x
out: -3 6 -3
(give one vector, another vector, and the "cross" operator; spit out the cross product)
The stack must accept 3d vectors or scalars, for operations like:
1 2 3
2
*
out: 2 4 6
The lexer and parser for this mini-calculator are trivial, but I cannot seem to think of a good way for creating the internal stack. How would you create a stack of for containing vectors or doubles (I rolled up my own very simple vector class - less than one hundred lines and it does everything I need).
How can I create a simple stack which accepts elements of class Vector or type double?
Thank you.