Il punto di avere una lista e un'interfaccia generica è che puoi cambiare com'è fatta la struttura Persona senza dover mettere mano al resto del codice, per cui puoi stare tranquilla, se si fanno le cose per bene si può cambiare idea su tante cose in seguito senza per questo dover riscrivere tutto da capo.
Un char * è semplicemente un puntatore ad un char, che tipicamente punta ad un array stile C di caratteri terminati da un carattere nullo. È il modo "classico" del C di gestire le stringhe, ma pone diversi problemi (la gestione della "durata di vita" delle stringhe spesso non è banale, per qualunque operazione bisogna usare funzioni di libreria e ci sono mille menate di gestione delle dimensioni massime del buffer). Di fatto in C++ nel 99% dei casi vuoi usare std::string, che incapsula un array di caratteri in una classe facile da gestire.Ho visto che in alcuni casi, al posto di std::string viene usato il char* che differenza c'è fra i due?
Comunque sono cose da primi capitoli del manuale di C++, probabilmente prima di proseguire un ripassino non guasterebbe...![]()



Rispondi quotando