重複の可能性:
ファイルスコープと静的フロート
静的変数とは?
これは本のコードです。
class X
{
int i;
public:
X(int ii = 0) : i(ii) {cout<<i<<endl;} // Default
~X() { cout << "X::~X()" << endl; }
};
void f()
{
static X x1(47);
static X x2; // Default constructor required
}
int main()
{
f();
return 0;
}
私の質問は、なぜ関数 f() のようにオブジェクトを static として宣言したいのですか? x1 と x2 を static として宣言しないとどうなりますか?