Perché il linker si aspetta la definizione del distruttore, che non esiste finché non metti le {} o lo esplitici fuori dalla classe.
Il costruttore probabilmente è tolto dal compilatore visto che così com'è non serve.