C ++ ios_base - init

Descrição

Isso é usado para a construção de um objeto desse tipo de membro, garante que os objetos de fluxo padrão (cin, cout, cerr, clog, wcin, wcout, wcerr e wclog) sejam construídos e inicializados corretamente.

Declaração

A seguir está a declaração para ios_base :: Init.

class Init;

A classe mantém um contador estático interno com o número de objetos existentes.

class ios_base::Init {
   static int init_cnt;  
public:
   Init();
   ~Init();
}

Funções de membro

As funções de membro do ios_base init devem ser assim -

  • Init(); (constructor)Aumenta o contador estático interno em um. Se o valor do contador interno era zero, os objetos iostream padrão são construídos e inicializados, se eles ainda não foram construídos e inicializados.

  • ~Init(); (destructor)Diminui o contador estático interno em um. Se o valor do contador interno chegar a zero, os fluxos de saída padrão são liberados (como se seus respectivos membros de liberação fossem chamados). Observe que isso não destrói nenhum dos objetos padrão, cuja duração dura até o término do programa.