Since this stirred up some controversy, I looked in the standard, and @Nawaz is right, I was wrong.
9.4.2/2
If a static data member is of const integral type [...]. The member
  shall still be defined in a namespace scope if it is used in the
  program and the namespace scope definition shall not contain an
  initializer.
So what you have there is a declaration, and the variable is initialized to a value. Outside the class you must define the variable, but not assign a value to it.
The part with const integral type only applies to this particular case - i.e. you can initialize said type inside the class, but all static data members must be defined outside.
To answer the question:
Regardless of whether the definition is or isn't required outside the class (depending on whether you use the member or not), whatever is inside the class (initialized or not) is just a declaration.