C en sistemas embebidos ha usado tradicionalmente estructuras para mantener datos estructurados.
Arduino trae C ++ a la tabla, por lo que podemos usar clases en su lugar.
Digamos que tenemos dos estructuras de datos diferentes que podrían considerarse muy similares:
typedef struct
{
int valueOne;
int valueTwo;
int valueThree;
} value_t;
y:
class Value
{
public:
int valueOne;
int valueTwo;
int valueThree;
}
En términos de memoria, ¿qué diferencia hará esto?
Todavía veo que la técnica de estructura se usa mucho, ¿por qué es esto?
structs se usan principalmente porque la gran mayoría del hardware embebido está codificado en C, por lo que cualquiera que pase mucho tiempo escribiendo código para MCU pequeñas probablemente conozca C mucho mejor que C ++, y automáticamente busca modismos C antes que modismos C ++. Es un problema de rendimiento del programador .
structyclassademás de la visibilidad predeterminada