You will make a member function static when it doesn't need an instance of the class to operate on.
Here's an explanation that I like better. A member function usually receives a hidden argument named `this', which is a pointer to an instance of the class (the object on which the method was called). Static member functions do not receive such an argument.
Is that clear, or do you need some examples?