#defineをconstで置き換えています。

void f(void)
{
    const int x=10;
}
と
void f(void)
{
    static const int x=10;
}
では何か違いが出ますか?
クラス内の定数は、複数のconstのインスタンスが作られないようstaticをつける様にしているのですが、
通常の関数の場合はどうなのでしょうか?