crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> Замена условия (if)
RazrFalcon
  опции профиля:
сообщение 15.3.2012, 10:58
Сообщение #1


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Насколько быдлокод такая замена?
if (index == 0)
    button->setEnabled(true);
else
    button->setEnabled(false);

button->setEnabled(index == 0);
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Гость_*
сообщение 15.3.2012, 12:13
Сообщение #2





Гости








    


не быдлокод
button->setEnabled(index)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 15.3.2012, 12:16
Сообщение #3


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


1 вариант быдлокод.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
proper
  опции профиля:
сообщение 15.3.2012, 12:19
Сообщение #4


Новичок


Группа: Новичок
Сообщений: 2
Регистрация: 15.3.2012
Пользователь №: 3265

Спасибо сказали: 0 раз(а)




Репутация:   0  


Может так ?
Я так понял, нужно дать противоположное значение индексу...
button->setEnabled(!index);

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 15.3.2012, 13:29
Сообщение #5


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


тупанул...

index = comboBox->currentIndex(); (сигнал у него есть на изменение индекса)

так вот нужно делать кнопку активной, если currentIndex() == 0


Цитата
1 вариант быдлокод.

Первый вариант первого сообщения? :huh:

то есть не быдлокод - это когда короче, грубо говоря.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ilyabvt
  опции профиля:
сообщение 15.3.2012, 16:31
Сообщение #6


Активный участник
***

Группа: Участник
Сообщений: 297
Регистрация: 23.6.2011
Пользователь №: 2765

Спасибо сказали: 45 раз(а)




Репутация:   3  


Цитата
то есть не быдлокод - это когда короче, грубо говоря.

Не всегда, но в целом да.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 16.3.2012, 8:17
Сообщение #7


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(Гость_Гость_* @ 15.3.2012, 15:13) *
не быдлокод
button->setEnabled(index)

плохо
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 16.3.2012, 16:32
Сообщение #8


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Цитата(RazrFalcon @ 15.3.2012, 14:29) *
то есть не быдлокод - это когда короче, грубо говоря.


Главное это не уровень "быдлокодовости", главное чтоб код легко было понять. Как тебе через год, так и другим программистам. Исходи из этого в первую очередь.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 16.3.2012, 16:43
Сообщение #9


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(Sokoloff @ 16.3.2012, 19:32) *
Главное это не уровень "быдлокодовости", главное чтоб код легко было понять. Как тебе через год, так и другим программистам. Исходи из этого в первую очередь.


аа,ну дык:

button->setEnabled(index!=0)


:)

это понятнее. И, что главное, правильнее
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Sokoloff
  опции профиля:
сообщение 17.3.2012, 19:46
Сообщение #10


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Цитата(Алексей1153 @ 16.3.2012, 17:43) *
button->setEnabled(index!=0)

это понятнее. И, что главное, правильнее

Понятно что ты отпечатался, не буду придираться. Но чем
button->setEnabled(index==0)

правильнее чем следующие 2?
if (index == 0)
    button->setEnabled(true);
else
    button->setEnabled(false);

или
button->setEnabled(!index)


Все три варианта дают один результат. Про последний вариант можно раздуть теорию, что теоретически он будет быстрее, т.к. нет сравнения, не запутываем предсказатель переходов в проце, и.т.д. Но на практике разницы не будет. Это примитивный пример, и писать можно по любому (я скорее использовал бы последний). Реальная жизнь сложнее, и иногда приходится долго втыкать в мега конструкцию кода в одну строку, а был бы код в несколько строк - понимался бы слету.

Я почему встрял?
Цитата(RazrFalcon @ 15.3.2012, 14:29) *
то есть не быдлокод - это когда короче, грубо говоря.
И останется у человека установка, что чем короче, тем лучше. И будет он писать короткий, запутанный код. Уж лучше установка на понятность. А краткость со временем приходит от лени.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.4.2024, 4:46