Допустим, у меня есть широкие переменные блоки проекта с внешней связью vByte[1000]
, vWord[1000]
и vQword[1000]
. А из-за отсутствия лучшего решения для отладки каждая переменная, которую я хочу видеть во время выполнения, должна быть в этих блоках.
Теперь я хочу реализовать набор функций в модуле (модуле компиляции), который имеет несколько важных значений, которые я хочу иметь возможность отслеживать. Я придумал следующие решения, чтобы сделать более понятный доступ к этим частям массива, но я не уверен, какой использовать.
Сначала я объявил бы массив extern vByte[1000];
в своем модуле, и я хотел бы дать определенной переменной массива подходящее имя.
Я мог бы просто #define
переменные, которые я хочу использовать: #define importantValue1 vByte[21]
и использовать их вот так.
Но я думаю, что было бы лучше инкапсулировать переменную в моем модуле, возможно, так:
static byte *importantValue1 = &vByte[21];
Это подтверждает, что эта переменная предназначена для использования в этом модуле. Есть ли у этого недостатки или это просто прямой подход с меньшими накладными расходами и без недостатков?