UPDATE
Ho capito il problema non è perchè l'oggetto viene instanziato e distrutto ma perchè non viene copiato bene.
Il problema sta in questo:
codice:
    double* mRegretSum;
    double* mStrategy;
    double* mStrategySum;
    double* mAverageStrategy;
Quindi ho sostuito tutti i double con vector<double> invece di fare riferimento ai puntatori.