Leggo che l'inizializzazione di un attributo static va eseguita successivamente alla sua dichiarazione ed al di fuori della dichiarazione di classe.
Poi trovo questo esempio che mi mette in crisi:
class MyClass {
public:
static int GetCounterValue();
/* ... */
private:
static int Counter = 0;
/* ... */
};
int MyClass::GetCounterValue() {
return Counter;
}
L'inizializzazione è fatta all'interno della dichiarazione della classe, non è sbagliato?