C e provavelmente muitas outras linguagens fornecem uma struct
palavra - chave para criar estruturas (ou algo semelhante). Estes são (pelo menos em C), de um ponto de vista simplificado, como classes, mas sem polimorfismo, herança, métodos e assim por diante.
Pense em uma linguagem orientada a objetos (ou com vários paradigmas) com estruturas no estilo C. Onde você os escolheria em relação às aulas? Agora, não acredito que eles devam ser usados com OOP, pois as classes parecem substituir seus propósitos, mas me pergunto se há situações em que elas poderiam ser preferidas às classes em programas orientados a objetos e em que tipo de situações. Existem tais situações?