Разница между const и #define для определения констант в Arduino заключается в следующем:
- const обозначает константу. 36 Это квалификатор переменной, изменяющий её свойства и делающий её доступной только для чтения. 3 Значение константы нельзя изменить, если попытаться присвоить ей значение, компилятор выдаст ошибку. 36
- #define позволяет дать имя константе. 9 Компилятор заменяет все упоминания этой константы её значением во время компиляции, поэтому значения, определённые с помощью #define, не занимают места в программе. 59
Таким образом, предпочтительнее использовать const для определения констант, так как переменные, определённые с его помощью, являются обычными переменными, значения которых нельзя изменить, они занимают место в памяти программы и имеют тип. 5