grazie MacApp.
un ultima cosa:
codice:
CEntity::CEntity(void){
    m_pEntityData = NULL;
}
e

codice:
CEntity::CEntity(void){
    m_pEntityData = new CEntityData;
}
il secondo , alloca la memoria , e l'altro(il primo) assegna a null il puntatore.
se la classe ha dei metodi e chiamo m_pEntityData->metodo() col secondo sono sicuro che funzioni , ed ho capito , ma con il primo metodo come fa a funzionare?
m_pEntityData è null! come fa a chiamare metodi un indirizzo 0?

grazie.