Кресты / Говнокод #3698 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
m_lActiveTab = GetCurSel();
for (int i = 0; i < GetItemCount(); i++)
	m_cItemSelected[m_lActiveTab] = false;
m_cItemSelected[m_lActiveTab] = true;

Вот так говнокодят в крупных проектах

Запостил: Snake2101 Snake2101, (Updated )

Комментарии (19) RSS

  • Похоже, что копи-паст всему виной.
    Должно быть так :
    m_lActiveTab = GetCurSel();
    for (int i = 0; i < GetItemCount(); i++)
    	m_cItemSelected[i] = false;
    m_cItemSelected[m_lActiveTab] = true;

    Или как-то иначе ?
    Ответить
        • В Древней Руси писали "по земли", "по идеи", "в деревни".
          Относительно древних русов "по идее" есть ошибка-аналогия с формами на -а, т.к. мягкие формы (-й-, допустим) имели форму "-и" в данном случаи + смещение падежа с предложного на дательный, тоже гадкая ошибка (что-то вроде "согласно плану" > "согласно плана").
          Граммар-наци 14 века негодуэ.
          Ответить
    • GetItemCount() будет вызываться GetItemCount()+1 раз.
      P.S. Если конечно возвращает неотрицательное число и не больше int'a.
      И к тому же, она действительно может быть inline для доступа к целочисленному private полю.
      Ответить
      • Тогда лучше так:
        int ItemCount = GetItemCount();
        for (int i = 0; i < ItemCount; i++)
        Ответить
      • > GetItemCount() будет вызываться GetItemCount()+1 раз.

        Функция сама задаёт, сколько раз она будет вызываться, это охуенно
        Ответить
        • >Функция сама задаёт, сколько раз она будет вызываться
          Капитан Очевидность предупреждает, что функция может вызываться и в других кусках кода.

          >охуенно
          В каком месте?
          Ответить
        • >Функция сама задаёт, сколько раз она будет вызываться
          Вообще-то это задает цикл 😉
          Ответить
          • Вам не понять всей глубины сей смысловой рекурсии 🙁
            Функция сама задаёт, сколько раз она будет вызываться, что тем самым задаст, сколько она будет вызываться, что задаст сколько вызываться.
            Понятно?
            Ответить
      • Могу тебя огорчить, GetItemCount это обложка для API функции SendMessage окнa TabControl
        Ответить
        • Я вообще не понимаю для чего это было сделано т.к в итоге оказалось что эта бойда не где не используется, возможно первоначально когда код писался лет 10 назад это где-то использовалось, а потом забыли убрать
          Ответить
    • Видимо на тот случай, если пользователь успеет за цикл сменить число выделеных элементов. 😀
      Ответить

Добавить комментарий

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8