Estou bastante confiante de que as variáveis declaradas globalmente são alocadas (e inicializadas, se aplicável) na hora de início do programa.
int globalgarbage;
unsigned int anumber = 42;
Mas e quanto aos estáticos definidos em uma função?
void doSomething()
{
static bool globalish = true;
// ...
}
Quando é o espaço globalish
alocado? Estou adivinhando quando o programa começa. Mas ele também é inicializado? Ou é inicializado quando doSomething()
é chamado pela primeira vez?