Sto realizzando un programma sul gioco degli scacchi, per rappresentare e movimentare le pedine ho realizzato una classe base ChessPiece e 8 classi derivate, una per ogni tipologia di pezzo(pedoni,re,regina,etc...). La classe base ha un metodo move che è virtual, ho realizzato quindi un metodo move con la stessa signature anche per le derivate.
La scacchiera è una matrice di puntatori a ChessPiece e alla creazione vengono opportunamente richiamati i giusti costruttori in base al tipo di pezzo (verificato).
Applico quindi il metodo move su ogni puntatore, però invece di richiamare i metodi delle classi derivate chiama quello della classe base.
Non so se può influire : le classi Torre e Alfiere sono virtual in quanto da esse deriva la classe Regina, questa scelta è dettata dal fatto che la regina è in grado di muoversi sia come un alfiere che come una torre.
Non so che parti di codice postare.