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?
struct
s 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 .
struct
yclass
además de la visibilidad predeterminada