静的関数はクラス定義内で定義できる。
関数の中には静的変数を置ける。
そこで常套手段としてたとえばこうする。
class hoge
{
public:
    static int& hoge()
    {
        static int i = 1;
        return i;
    }
};

あるいはそれだけのためにtemplateにしてしまう方法もあるようだ。
http://d.hatena.ne.jp/Cryolite/20051129#p3

ほかにも大抵の処理系では独自拡張でcppファイルに定義が要らなくなるような方法を提供しているがお勧めしない。