Я новичок в разработке для iPhone, и я просто пробую некоторые простые процедуры рисования, и у меня возникают проблемы с использованием определенных значений в простой математике.
У меня есть такая строка:
int offset = (((myValue - min_value) * 6) - middle);
и это прекрасно работает - но я не люблю использовать там жестко закодированный 6 (потому что я буду использовать его во многих местах.
Поэтому я решил определить константу с помощью #define:
#define WIDTH_OFFSET 6;
тогда я мог бы использовать:
int offset = (((myValue - min_value) * WIDTH_OFFSET) - middle);
однако - при этом возникает ошибка компилятора: «Ожидаемое выражение».
Я могу обойти это, разбив вычисление на несколько строк:
int offset = myValue - min_value;
offset = offset * WIDTH_OFFSET;
offset = offset - middle;
Компилятор считает, что это нормально.
Полагаю, здесь есть какая-то неявная приведение или какая-то другая языковая функция - кто-нибудь может мне объяснить, что происходит?