Текущий архив: 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.52 MB
Время: 0.099 c