Many of the simple containers (such as vectors and rectangles) out to have constexpr constructors and arithmetic operators. This is both a matter of efficiency and convenience.
Example 1:
auto vector_sum = sf::Vector2f{1, 2} + sf::Vector2f{3, 4}; // Optimization: compute vector_sum at compile-time if operator + is constexpr.
Example 2:
struct Foo {
static constexpr sf::Vector2f vector_constant{5, 6}; // Only possible if ctor is constexpr.
...
}