Russian Qt Forum
Май 06, 2024, 09:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 [3] 4   Вниз
  Печать  
Автор Тема: [флэйм] if(expr) return 1; else return 0;  (Прочитано 34362 раз)
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #30 : Февраль 15, 2009, 22:28 »

по-хорошему надо написать

А где это так сказано? Кто так пишет? Кто так говорит что так нужно?
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Khs
Гость
« Ответ #31 : Февраль 15, 2009, 22:30 »

Лично мне кажется, что тему лучше закрыть, ибо на вкус и цвет товарищей нет.  В замешательстве
не, пусть будет. как `null vs 0`...

ага, и как Qt vs .NET, там аж на 9 страниц развили тему Улыбающийся
Записан
ритт
Гость
« Ответ #32 : Февраль 15, 2009, 22:50 »

Лично мне кажется, что тему лучше закрыть, ибо на вкус и цвет товарищей нет.  В замешательстве
не, пусть будет. как `null vs 0`...

ага, и как Qt vs .NET, там аж на 9 страниц развили тему Улыбающийся
ну и что? было бы неинтересно, давно тему снесли бы. а так там даже две темы слеплено в кучку Улыбающийся

зы. кстати, на вкус и цвет товарищи есть Улыбающийся
Записан
Khs
Гость
« Ответ #33 : Февраль 15, 2009, 22:58 »

зы. кстати, на вкус и цвет товарищи есть Улыбающийся

Ну это как сказать, ведь никем не доказано что два разных человека одинаково чувствуют и видят одно и то же Улыбающийся А следовательно и не факт, что им нравится одно и то же Улыбающийся

Хы..теперь в этом топике тоже несколько рассуждений Улыбающийся
Записан
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #34 : Февраль 15, 2009, 23:01 »

xintrea, так, ради интереса, загляни в исходники в Qt и напиши письмо в Qt Software, мол "ай-я-яй, вы тут все каноны стилистики и С++ ломаете, куда же этогодится так писать":

Код
C++ (Qt)
bool QWidget::autoFillBackground() const
{
   return d->extra && d->extra->autoFillBackground;
}

Код
C++ (Qt)
QInputContext *QWidget::inputContext()
{
   if (!testAttribute(Qt::WA_InputMethodEnabled))
       return 0;
 
   return d->inputContext();
}

И тернарные операции используете:

Код
C++ (Qt)
extra->explicitMinSize = (minw ? Qt::Horizontal : 0) | (minh ? Qt::Vertical : 0);

Код
C++ (Qt)
Qt::LayoutDirection QWidget::layoutDirection() const
{
   return testAttribute(Qt::WA_RightToLeft) ? Qt::RightToLeft : Qt::LeftToRight;
}

А этот код вобще кошмар:

Код
C++ (Qt)
QCursor QWidget::cursor() const
{
   if (testAttribute(Qt::WA_SetCursor))
       return (d->extra && d->extra->curs)
           ? *d->extra->curs
           : QCursor(Qt::ArrowCursor);
   if (isWindow() || !parentWidget())
       return QCursor(Qt::ArrowCursor);
   return parentWidget()->cursor();
}

ужос!
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
xintrea
Супер активный житель
*****
Offline Offline

Сообщений: 754



Просмотр профиля WWW
« Ответ #35 : Февраль 15, 2009, 23:14 »

по-хорошему надо написать
А где это так сказано? Кто так пишет? Кто так говорит что так нужно?

В книжках это сказано. К сожалению, в электронном виде не могу найти, а то бы ссылки дал. Называются "Практика программирования" товарищей Кернигана и Пайка, и "Совершенный код" товарища Маркконнелла. Кстати там не только то что тут обсуждаем пишут. Там заодно и советы по стилю форматирования есть, причем не на пустом месте, или "потому что так красиво", или "потому что тут так принято", а на нескольких страницах с диаграммами структуры кода. Я тут эту тему вообще боюсь поднимать, ибо чую что получица холивар шояипу.
Записан

Собираю информацию по крупицам
http://webhamster.ru
xintrea
Супер активный житель
*****
Offline Offline

Сообщений: 754



Просмотр профиля WWW
« Ответ #36 : Февраль 15, 2009, 23:42 »

xintrea, так, ради интереса, загляни в исходники в Qt и напиши письмо в Qt Software, мол "ай-я-яй, вы тут все каноны стилистики и С++ ломаете, куда же этогодится так писать"

ужос!

Ужос налицо.

Вы же не хотите сказать что "коль даже в Qt пишут уродливый код, так и я тоже буду всё уродовать"? Если видишь откровенное уродство, чего на него равняться?
Записан

Собираю информацию по крупицам
http://webhamster.ru
ритт
Гость
« Ответ #37 : Февраль 15, 2009, 23:53 »

я вот вижу откровенное уродство в коде, который приводил выше - на него и не равняюсь.
с моей точки зрения если сказал, что вернёшь данные, чётко покажи, что возвращаешь их в любом случае, а не если что-то там "да", что-то "нет", а в противном случае "вот". хотя бы не вписывай этот горемычный "else" - уже будет сходу видно, что значение всяко возвращается...
Записан
Rcus
Гость
« Ответ #38 : Февраль 16, 2009, 07:43 »

Не помню в CC высказываний о вреде тернарного оператора или наставлений о единственно верном стиле программирования. Помню только что в начале главы о форматировании кода есть знак предупреждения о священных войнах Улыбающийся Макконнелл больше говорит о снижении сложности через снижение вложенности
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #39 : Февраль 16, 2009, 08:54 »

2 xintrea,
+ пицот тыщ !  Улыбающийся

остальные - нечаво выпендривацца! Улыбающийся
Записан

ArchLinux x86_64 / Win10 64 bit
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #40 : Февраль 16, 2009, 12:40 »

Ужос налицо.

Вопрос снят...
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
pastor
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 2901



Просмотр профиля WWW
« Ответ #41 : Февраль 16, 2009, 12:41 »

2 xintrea,
+ пицот тыщ !  Улыбающийся

остальные - нечаво выпендривацца! Улыбающийся

Молодца! Аргументируй давай!
Записан

Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #42 : Февраль 16, 2009, 13:10 »

Аргументирую:
исхожу из сугубо эстетических взглядов. Зачем писать нечто подобное:
Код:
QCursor QWidget::cursor() const
{
    if (testAttribute(Qt::WA_SetCursor))
        return (d->extra && d->extra->curs)
            ? *d->extra->curs
            : QCursor(Qt::ArrowCursor);
    if (isWindow() || !parentWidget())
        return QCursor(Qt::ArrowCursor);
    return parentWidget()->cursor();
}

Непонимающий
т.к в таком случае еще более нагружается мозг и без того нагруженный! зачем усложнять и без того сложную жизнь?! Улыбающийся

и в конечном счете ведь впринципе эта запись (ну и аналогичные ей) не дают никаких плюсов при работе приложения (ИМХО)

нужно писать код - как стих в литературе! чтобы было легко его читать! без всяких там подвыподвертов!


Записан

ArchLinux x86_64 / Win10 64 bit
BRE
Гость
« Ответ #43 : Февраль 16, 2009, 13:13 »

нужно писать код - как стих в литературе! чтобы было легко его читать! без всяких там подвыподвертов!
Перепиши пожалуйста эту функция так, как написал бы ее сам.
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #44 : Февраль 16, 2009, 13:15 »

Я не умею! Я только учусь! Улыбающийся

Ага, ща все брошу и буду фигней заниматься (с) Улыбающийся
« Последнее редактирование: Февраль 16, 2009, 13:17 от kuzulis » Записан

ArchLinux x86_64 / Win10 64 bit
Страниц: 1 2 [3] 4   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.142 секунд. Запросов: 22.