Это не условие инициализации переменной, это инициализация переменной с включенным логическим оператором.
static_read
- это всегда присваивает результат вычисления выражения:
static_tactile_to_update != -1 && !CapSense_IsBusy();
Это означает, что единственный способ, которым является true
, это если оба static_tactile_to_update
не -1
и CapSense_IsBusy()
возвращает false
.
в каждом если переменной присваивается значение, оно не назначается условно.
Условное присвоение выглядит следующим образом:
bool static_read;
if (...)
static_read = true;
Также нет ограничений на то, насколько сложным может быть выражение, поэтому вы может соединить столько операторов, сколько необходимо для express логики c, которую вы пытаетесь реализовать.