I'm not sure if I'm doing it "correctly", but I usually try not to need to do this.
I try to make my classes (except for window/drawing classes) never have to access the window themselves.
For example, if you have a class that has a sprite you need to draw, you can write a getSprite() function, that returns the sprite. Then do
RenderWindow.Draw (object.getSprite());
Someone else can hopefully explain whether or not this is a good idea... :lol: