ベクトル コンテナーに素数のリストを格納する関数があります。関数が呼び出されるたびに、コンテナーのサイズは同じままか、大きくなります。
bool prime(int n)
{
    ...
    static vector<int> v;
    vector <int>::iterator Iter;
    ...
    v.push_back(n);
}
int main()
{
    int num = 0;
    for (int i = 2; i <= n; ++i) {
      if (prime(i)) {
        ++num;
    }
}
この例でストレージが機能する理由がわかりません。このプログラムは依存していますか?