這用於構造此成員型別的物件,確保標準流物件(cin,cout,cerr,clog,cin,cout,cerr和clog)被構造和正確初始化。
以下是ios_base::Init
的宣告。
class Init;
類維護一個內部靜態計數器與現有物件的數量。
class ios_base::Init {
static int init_cnt;
public:
Init();
~Init();
}
ios_base init
的成員函式如下所示 -
Init()
- (建構函式)將內部靜態計數器增加1
。如果內部計數器的值為0
,則構造和初始化標準iostream
物件(如果它們尚未被構造和初始化)。
~Init()
- (解構函式)將內部靜態計數器減1
。如果內部計數器的值為0
時,則標準輸出流被重新整理(就好像它們各自的flush
成員函式被呼叫一樣)。請注意,這不會破壞任何標準物件,其持續時間是到程式終止。