So... you used push_back in your original rendering code, it was slow, you replaced it with the code from the SFML tutorial and it was also slow, so you deduce that using push_back wouldn't cause your rendering to be slow as well? If it is really the case that your original code and the SFML code run without any difference in performance, then something is really wrong with your game loop. The point is that your original code is supposed to be slow unless you draw so little it doesn't make a difference.
I don't know how you measure performance but as Ixrec already said, the more you draw, the more your GPU has to work, so it will naturally be slower. The question however is, is your application GPU or CPU bound. If it is CPU bound then you need to look elsewhere in your application for the culprit. This is probably the case since drawing using the tutorial code doesn't seem to speed things up.
I'm curious, what is slow for you? You always say "slow" but never really define it in terms of FPS values. 1000 FPS might still be slow for some people, if e.g. they knew that they could run it at 3000 FPS if done right.
Did you try running portions of your code in a sandbox project? It helps to test the performance of individual subsections of your code, as opposed to replacing parts and coming to conclusions using deductive reasoning.
Oh and by the way, try not to pass primitive data types by const reference... it just looks wrong.