>>19
「宣言」と「定義」は違うだろ。

struct S
{
  static const int I;
  static const int* const Ptr;
  static const int& Ref;
};
const int S::I = 12345;
const int* const S::Ptr = &S::I;
const int& S::Ref = S::I;