credo che dovresti definire la classe Game come virtuale ponendo un metodo virtuale puro (di solito il distruttore) così da non complicarti la vita