PDA

Просмотр полной версии : что за код с вопросами?


Agni
11.05.2009, 20:35
встретился в скроллбаре такой код :eek:
pimp._y = pimp._y<pimp_start ? pimp_start : pimp._y>pimp_stop ? pimp_stop : pimp._y;
первый раз встретил знак ? в коде
поясните, плиз, что он делает
можно ли написать эту строку кода без знаков ? ?

pirog™
11.05.2009, 20:47
это сокращенный условный оператор

это то же самое что:

if (pimp._y<pimp_start)
{
pimp._y = pimp_start;
}
else
{
if (pimp._y>pimp_stop)
{
pimp._y>pimp_stop;
}
else
{
pimp._y
}
}

Stargazer
11.05.2009, 21:05
v= (b) ? x : y;

Означает, что в v будет x, если b истинно, либо y в противном случае.

Upd: более общий случай.

pirog™
11.05.2009, 21:13
да, будет именно так

Agni
11.05.2009, 21:23
спасибо

а зачем этот кусок:
else
{
pimp._y
}

pirog™
11.05.2009, 22:55
а зачем этот кусок:

забыл дописать код. Вместо него:

else
{
pimp._y = pimp._y;
}

iNils
11.05.2009, 22:58
pirog™, это не код, а каша. Код имеет нормальное форматирование с табуляцией. Впредь, пожалуйста выкладывайте код в удобочитаемом виде.