sf::Vector2<T>
As a rule of thumb, if the type is less than or equal to the CPU register width times two then you ought to pass it by value. This will lead to more efficient code generation.
sf::String