2016-03-18 2 views
-4

Я знаю, что в C++ вы можете сделать такого рода заявлений:= оператор использования условие в C#

size = 8 * (x % 8 != 0); 

Что бы эквивалент в C#? Должен ли я использовать «если»? Спасибо за помощь!

+2

вы пытались увидеть, что поведение выше заявление в C#? – Saleem

+1

Не могли бы вы объяснить, что это делается? это попытка округлить до ближайшего кратного 8? –

+5

Всегда считайте, что вы создаете недопустимый код, независимо от того, на каком языке вы находитесь. Я должен признать, что я не уверен, что понимаю, что должен делать код. Умножает ли он 8 на один или ноль в зависимости от того, можно ли делить 'x' на 8? – HimBromBeere

ответ

5

Я полагаю, вы можете использовать ternary operator:

var size = 8 * (x % 8 != 0 ? 1 : 0); 

Или еще проще:

var size = (x % 8 != 0) ? 8 : 0; 
+6

Тогда вы можете четко удалить умножение. 'size = x% 8! = 0? 8: 0'' – xanatos

Смежные вопросы