This function could easily have been made freestanding, since it doesn’t require an object of the class to operate within. Making a function a static member of a class rather than a free function gives two advantages:
- It gives the function access to private and protected members of any object of the class, if the object is static or is passed to the function;
- It associates the function with the class in a similar way to a namespace.
In this case it appears only the second point applies.