Школоло / Говнокод #2412 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
function ... : Integer;
var
  i:integer;
begin
  Result := 0;
  for i := 1 to ... do
    if bla-bla then
      inc(Result);
  Result := Result;
end;

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

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

    • Вообще-то функции на дельфах именно так и пишутся? Или тебя вообще от дельфы перетряхивает?
      Ответить
      • все же у поцкаля/делфи унылый синтаксис
        да и вообще после функциональщины отвыкаешь от всех этих result, return, etc
        Ответить
  • Автору - а как этот код должен на самом деле выглядеть? Под бла-бла может быть что угодно, так что код вполне нормален.
    Или теперь модно всё, что связано с Дельфи, называть говном?
    Ответить
    • Result := Result;


      Ну да, и эта строка тоже преисполнена смысла.
      Ответить
  • мне кажется автору не нравится строчка, когда переменная присваивается самой себе)
    Result := Result;
    Дак и выложил бы одну эту строку)
    Ответить
  • Постер - лох.
    Result:=Result - крайне полезная конструкция. Она вырезается оптимизатором, если он включён (например, релиз) и остаётся, если оптимизатор выключен (например, в отладочной версии). В последнем случае можно поставить на эту строчку брейкпоинт и узнать, что там навычисляла функция, т.к. внутри функции подобной структуры никак иначе нельзя это сделать (теряются регистровые переменные).
    Ответить
    • В дебаге оптимизация работает, вы перепутали с каким-то говноязыком. А для этих целей есть либо отладочный вывод, либо
      {$IFDEF DEBUG}
      {$O-}
      {$ENDIF}
      Ответить
  • А на inc(Result) поставить breakpoint нельзя или на условие if?! На вызов функции и посмотреть что она вернула в конечном итоге? По-моему "Result:=Result - крайне полезная конструкция" - это полная фигня и бред.
    Ответить
  • 2Grizzly
    если нужно именно значение функции - то нельзя. или ты хочешь каждую итерацию цикла отлаживать? или ставить кучу брекпоинтов во всех местах где вызывается эта функция?
    PS: хотя я при отладке ставлю бряку на конечный end
    Ответить
    • "или ставить кучу брекпоинтов во всех местах где вызывается эта функция?"
      хм... ладно убедили 🙂 может кому-то и удобно
      Ответить
  • а result:=... вместо дебильного цикла написать нельзя было?
    Ответить

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

Где здесь C++, guest?!

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


    8