Supponiamo di avere una classe di base astratta Parent e sottoclassi Child1 e Child2. Se ho una funzione che richiede un genitore *, c'è un modo (forse con RTTI?) Per determinare in fase di esecuzione se si tratta di un Child1 * o Child2 * che la funzione effettivamente ricevuto?Identificazione di una sottoclasse con un puntatore alla sua classe base?
La mia esperienza con RTTI qui, finora, è stata che quando foo è un genitore *, typeid (foo) restituisce typeid (Parent *) indipendentemente dalla classe figlio di cui foo è membro.
Un 'Parent *' è sempre un 'Parent *'. È * mai * un 'Bambino *'. Quello che intendi chiedere è "qual è il tipo di cosa a cui punta". –
Kerrek SB: Ieri ti ho dato la fredda spalla, ma quando sono arrivato alla programmazione vera e propria, il tuo commento era probabilmente più prezioso di qualsiasi altra cosa sulla pagina. Mi dispiace ... – ExOttoyuhr