Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.21;
Скачать: CL | DM;

Вниз

Гениальные коменты в коде....   Найти похожие ветки 

 
Kerk ©   (2005-07-26 20:36) [0]

Разбираю исходник.... плакаю.. гениально.. :))))

buf, buf0: array of byte; //мммда... трагический случай... buf0 используется как копия buf и необходим для ReadDataRun(те перед входом надо сделать copy
...
sv:=DirList.Values[DirList.Names[k]]; //ГЛЮЮК
...
Run.RunStart:=0-Run.RunStart;//+7 -0111 - зачем - не знаю
...
//для хранения MFTReference(cardinal) будем использовать указатель (и не надо смеяться)
FileList.Objects[FileList.Count-1]:=TObject(pointer((@buf[offs])^));

...
until offs>=size-$10;////почему -$10 не знаю
...
ShowSectorsFrm := TShowSectorsFrm.Create(Application);//бред
...
//  MX_API.HexEditWindow.LoadBlock(3180846);//НУ ЧТО ЗА БРЕД

//белые тушканчики любят горох
//а ты любишь белых тушканчиков???
//чтобы проверить мякгий знак на конце нужно задать вопрос
//  "Что делаешь?"


 
raidan ©   (2005-07-26 20:39) [1]

Зато не скучно :)


 
Джо ©   (2005-07-26 20:40) [2]

Это-таки анализатор NTFS-томов? 8-()


 
Verg ©   (2005-07-26 20:45) [3]

int rtems_gxx_key_create (__gthread_key_t *key, void (*dtor) (void *))
{
 /* Ok, this can be a bit tricky. We are going to return a "key" as a
  * pointer to the buffer that will hold the value of the key itself.
  * We have to to this, because the others functions on this interface
  * deal with the value of the key, as used with the POSIX API.
  */
  /* Do not pull your hair, trust me this works. :-) */  __gthread_key_t *new_key = ( __gthread_key_t * )malloc( sizeof( __gthread_key_t ) );
 *key = ( __gthread_key_t )new_key;
 *new_key = NULL;

 /* register with RTEMS the buffer that will hold the key values */
 if( rtems_task_variable_add( RTEMS_SELF, (void **)new_key, NULL ) == RTEMS_SUCCESSFUL )
      return 0;
 return -1;
}


 
Fin ©   (2005-07-26 20:49) [4]

я тут давиче смотрел правил исходники модуля обрабатывающего поступление оплаты за электроэнергию, такое ощущуние что "конкретно братан писал".


 
pasha_golub ©   (2005-07-26 20:57) [5]

Гыгы

Из меня позднего:

procedure .........; //achtung!


 
Kerk ©   (2005-07-26 20:58) [6]

Джо ©   (26.07.05 20:40) [2]
Это-таки анализатор NTFS-томов? 8-()


Угадал :)))


 
Джо ©   (2005-07-26 20:59) [7]

Модуль FastBmp.pas из MediaLib

procedure TFastBmp.SetPixel(x,y:Integer;Clr:Integer);
begin
 CopyMemory( //damn.. I"m fuckin smart
   Pointer(Integer(Bits)+(y*(Width mod 4))+(((y*Width)+x)*3)),
   @Clr,3);
end;


 
Джо ©   (2005-07-26 21:04) [8]


> [5] pasha_golub ©   (26.07.05 20:57)
> Из меня позднего:


Хе-хе, из меня раннего :)

Был метод
procedure TDrawSurface.Render (ACanvas: TCanvas);

вызывающий, в зависимости от неких условий один из следующих методовю

procedure TDrawSurface.RenderItFuckingFast (ACanvas: TCanvas);
или
procedure TDrawSurface.RenderItFuckingSafe (ACanvas: TCanvas);

Даже комментарии не понадобились :0)


 
Kerk ©   (2005-07-26 21:05) [9]

А я комментов почти не пишу.. мой самый любимый:

procedure TMXfrm.StubActionExecute(Sender: TObject);
begin
 // Не удалять этот обработчик!!!
 // Он действительно должен быть пустым!!! :)
end;


 
Джо ©   (2005-07-26 21:10) [10]


> [9] Kerk ©   (26.07.05 21:05)

ИМХО, один из немногих действительно полезных комментариев. Я, впрочем, в таких случаях отделываюсь стандартным // do nothing.
Впрочем, некоторые адепты жесткого рефакторинга советуют для этих целей создать "пустой" метод/процедуру:
procedure DoNothing;
begin
end;

Так яснее получается. Особенно, если какой-то даун после тебя решит неглядя комментарии почистить.


 
Verg ©   (2005-07-26 21:11) [11]


> Kerk ©   (26.07.05 21:05) [9]
> А я комментов почти не пишу..


И это пройдет...


 
Джо ©   (2005-07-26 21:18) [12]


> [11] Verg ©   (26.07.05 21:11)
> И это пройдет...

Слишком категорично, ИМХО. Керк ведь сказал "почти", а не "совсем". А излишние комментарии - зло не меньшее, чем недостаток их.


 
cyborg ©   (2005-07-26 21:27) [13]

В чём заключается гениальность?


 
Verg ©   (2005-07-26 21:30) [14]


> Джо ©   (26.07.05 21:18) [12]


> Слишком категорично


Если это "слишком" категорично, то... :))

Тетя "кап-кап" - как называла моя дочь сказку про Принцессу на горошине. :))


 
Kerk ©   (2005-07-26 21:50) [15]

все из того же сабжевого исходника :)))
 THighlight = record  //надо это для унификации подсветки,
   LCN: int64;         //но это бред
   offs: word;        
   len: word;
   color: cardinal;
 end;


 
Verg ©   (2005-07-26 21:53) [16]


> offs: word;


Это тоже...


 
Lamer@fools.ua ©   (2005-07-27 00:22) [17]

Ацтой ваш код. Вот апупенный пример из реального проекта (VB.NET):

Private Function BlaBlaBla(...) As Boolean
  Dim retValue As Boolean

  " Тут манипуляции, приводящие к присваиванию
  " значения переменной retValue. Я их опускаю...

  If retValue = True Then
      Return True
  Else
      Return False
  End If
End Function


 
Kerk ©   (2005-07-27 00:26) [18]

Lamer@fools.ua ©   (27.07.05 0:22) [17]

Хе. У меня был пациент по-круче.

 inline Void SetTrueIfFalse(Boolean &variable) {
   if (!variable) variable=true;
 }


 
Ega23 ©   (2005-07-27 10:08) [19]


Private Function BlaBlaBla(...) As Boolean
 Dim retValue As Boolean

 " Тут манипуляции, приводящие к присваиванию
 " значения переменной retValue. Я их опускаю...

 If retValue = True Then
     Return True
 Else
     Return False
 End If
End Function


Фигня.
Вот как надо:

if A=True then
 begin
  A:=False;
 end
else
 begin
  if A=False then
   begin
    A:=True;
   end;
 end;



 
Sandman29   (2005-07-27 10:10) [20]

Ega23 ©   (27.07.05 10:08) [19]
if A=True then
begin
 A:=not A;
end
else
begin
 if A<>True then
  begin
   A:=not A;
  end;
end;


 
Lamer@fools.ua ©   (2005-07-27 11:21) [21]

>> [19], [20]

Не-е. Это ацтой. Вот как надо:

if (A=True)and(A<>False) then
begin
 A:=Boolean((Byte(A) xor $FF) and 1);
end
else
begin
 if (A=False)and(A<>True) then
 begin
   A:=Boolean((Byte(A) xor $FF) and 1);
 end;
end;


 
Sandman29   (2005-07-27 11:25) [22]

Lamer@fools.ua ©   (27.07.05 11:21) [21]

Не хватает в начале
if (A=True) or (A=False) then :)


 
Ega23 ©   (2005-07-27 11:27) [23]

2 Sandman29   (27.07.05 11:25) [22]
if (A=True) or (A=False) then :)

КЛАСС!!!!!!!!!!!!!!!


 
pasha_golub ©   (2005-07-27 11:34) [24]

Джо ©   (26.07.05 21:10) [10]

procedure DoNothing;
begin
end;


Я обычно его Dummy называю.


 
han_malign ©   (2005-07-27 12:02) [25]

>if (A=True) or (A=False) then :)
>КЛАСС!!!!!!!!!!!!!!!
- а чего "класс", скажем в C-ях такое условие может и не выполняться...


 
jack128 ©   (2005-07-27 12:23) [26]

han_malign ©   (27.07.05 12:02) [25]
- а чего "класс", скажем в C-ях такое условие может и не выполняться...

в дельфях тоже. Но для этого нужно иметь очень кривые руки


 
TUser ©   (2005-07-27 12:25) [27]

> - а чего "класс", скажем в C-ях такое условие может и не выполняться...

И в паскале тоже

var AVariable: boolean = false;

function A: boolean;
begin
 result:=AVariable;
 AVariable:=not AVariable;
end;

...

if (A = true) or (A = false) then
 // never executable code

ЗЫ. Интересно, а если в таком коде написать проверялку лицензионности, причем помимо одной работающей проверялки ее записать в 10 разных местах после вот такого (или подобного) if. Затруднит ли это хакеру поиск настоящей проверки?


 
jack128 ©   (2005-07-27 12:28) [28]

TUser ©   (27.07.05 12:25) [27]
в отличии от паскаля в сишном коде A не может быть функцией, она гарантированно переменная


 
HBreaker   (2005-07-27 12:58) [29]

Вот пример на php :))

$a=true;

function a()
{
 $res=$a;
 $a=!$a;
 return $res;
}

if (a() || !a())
{
 echo "aaaaaaaa!!!!!"
}
else
{
 echo "bbbbbbbbeeeeeeeee!!!!"
}

как вы думаете что сроботает "ааа" или "bbbeee"?


 
Seg   (2005-07-27 13:11) [30]

Загловок показался "Генитальные моменты в коде"

Пора в отпуск...


 
raidan ©   (2005-07-27 14:47) [31]

>Seg   (27.07.05 13:11) [30]
Мало в жизне секса по утрам? =)


 
Seg   (2005-07-27 15:38) [32]

>Мало в жизне секса по утрам? =)

Как раз с этим все в порядке.


 
Alexander Panov ©   (2005-07-27 23:30) [33]

procedure TFClientSocket.CheckBusy;
begin
 if not (FState=tssNone) then raise EFSocketError.Create("Сокет занят полезным делом, не надо мешать");
end;


 
wicked ©   (2005-07-27 23:40) [34]

> Alexander Panov ©   (27.07.05 23:30) [33]
гы... :)



Страницы: 1 вся ветка

Текущий архив: 2005.08.21;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.046 c
6-1115884049
DmitryMN
2005-05-12 11:47
2005.08.21
Проблема с пересылкой записи чеп рез сокет


14-1122443954
Ega23
2005-07-27 09:59
2005.08.21
С днем рождения! 27 июля


1-1123077939
Vitali
2005-08-03 18:05
2005.08.21
Временное зависание Delphi


4-1117952010
sour
2005-06-05 10:13
2005.08.21
RAS звонилка


3-1121072892
kyro
2005-07-11 13:08
2005.08.21
Редактировани DBGrid !