In C ++ e in altri linguaggi influenzati esiste un costrutto chiamato Structure ( struct
), e un altro chiamato class
. Entrambi sono in grado di contenere funzioni e variabili. Alcune differenze sono:
- Alla classe viene assegnata la memoria nell'heap e a
struct
viene assegnata memoria nello stack (nota: questo è errato per C ++, ma forse corretto in quello che l'OP chiama "lingue influenzate") - Le variabili di classe sono private per impostazione predefinita e in
struct
sono pubbliche
La mia domanda è: il struct
è stato in qualche modo abbandonato per Class? Se è così, perché? Oltre alle differenze sopra, un struct
può fare tutte le stesse cose che fa una classe. Allora perché abbandonarlo?