Я новичок в разработке iPhone, я просто пробую несколько простых процедур рисования, и у меня проблемы с использованием определенных значений в простых math.
У меня есть такая строка:
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;
Компилятор считает, что это нормально.
Я предполагаю, что здесь работает какое-то неявное приведение или какая-то другая языковая функция - может ли кто-нибудь объяснить мне, что происходит?