The main problem is that the declaration of Newton class does not see the declaration of Function class. Either forward declare it or just move the whole class before Newton.
Others : line 14, wrong name of the constructor. line 25 you don't need that first minus. line 34 Function is the class Functionf is the object. You can't pass a class name to something..
I assume it returns a root of the function?
Test it first with something like f = x*x+5*x+6; (and f' = 2*x+5) to know that it really works. (you should get 2 or 3)
Then change f = F' where F = exp(x)-sin(2*x), calculate f' = F'' and then you'll get a critical point. I have no idea how you're going to see if it's a minimum or a maximum though..