Ho bisogno di memorizzare una serie di punti dati sotto forma di (nome, valore), in cui il valore potrebbe assumere diversi tipi.C++ Come creare un contenitore eterogeneo
Sto cercando di utilizzare un modello di classe per ogni punto di dati. Quindi, per ogni punto di dati che vedo, voglio creare un nuovo oggetto e reinserirlo in un vettore. Per ogni nuovo tipo, ho bisogno di creare una nuova classe dal modello prima. Ma non posso memorizzare gli oggetti creati in alcun vettore, poiché i vettori si aspettano lo stesso tipo per tutte le voci. I tipi che devo memorizzare non possono essere montati in una gerarchia di ereditarietà. Non sono correlati. Inoltre, in futuro potrebbero essere creati più tipi e non voglio modificare il servizio di archiviazione per ogni nuovo tipo. C'è un modo per creare un contenitore eterogeneo per memorizzare queste voci? Grazie!
Mostra un modo per gestire il polimorfismo di runtime. Immagino sia correlato. https://youtu.be/vxv74Mjt9_0?t=16m8s –
Possibile duplicato di [Come posso archiviare oggetti di tipi diversi in un contenitore C++?] (Https://stackoverflow.com/questions/4738405/how-can- i-store-objects-of-different-types-in-ac-container) –