|
Fraction.operator*(n1,d1);
|
What are you trying to do here? First of all, you cannot call the operator * function like this; it must be called by an object of the Fraction class, not by the class name. Second, the operator * function does not change any of the operands used in the multiplication; it only returns the result of the multiplication, but the result is not assigned to anything in this statement.
Also, you have multiple default constructors, which my compiler at least does not like, and I'm pretty sure all compilers don't like that. Your constructor that has 2 parameters will set num to 0 and den to 1, so you can remove the constructor with 0 parameters.
On line 95, you have code that will evaluate to cin >> "/" and cin >> endl. These statements don't make any sense. Is this supposed to be a cout statement, or what are you trying to do here? Given the code you have, it looks like this should be a cin statement, but you can't put "/" or endl in those places then.
Your multFraction function has an int return type, but does not return anything. It either needs to be changed to void or actually return a value.
Again, what do you think this is supposed to do? Right now, your loop will never execute if the user inputs +, -, *, or /, or anything else that isn't a space, which is a problem because cin will completely ignore any spaces that the user inputs. So basically, the loop will NEVER execute, ever. Your cin >> op statement should use the cin.get function instead, because you only want to read in one character.
That's all I'll say for now; you've got quite a bit of stuff that needs work. Post back if you have more questions or if you get your program working.