var a,b:Int64;
c:double;
d:real;
begin
a:=StrToInt64Def(Edit1.text,0);
b:=StrToInt64Def(edit2.text,0);
c:=1.05*a;
d:=c-b;
begin;
if (c>a) then
begin;
label1.caption:=FloatToStr(c);
end;
if (b
begin;
label1.Caption:='Za mało o: ';
label7.Caption:=FloatToStr(d);
end;
end;
end;
To główna struktura programu gdzie mam błąd Out of Memory. Co w tym przypadku może być winowajcą ?
Uruchom w debuggerze i po wysypaniu się zobaczyć w której linii. Forum to dobre miejsce do zadawania pytań, ale w dalszej perspektywie umiejętności pracy z debuggerem nie zastąpi.
Nie używałem Delphi ponad 10 lat, więc nie pamiętam niezbędnych kroków. Zerknij do menu Run - powinno być tam uruchamianie z debuggerem (Debug and run czy coś). Jak nie ma, to pewnie aktywuje się to gdzieś w opcjach (jakieś menu Project / Options pewnie i dalej opcje kompilatora). W czasie debugowania aplikacji, w razie błędu takiego jak OOM, aplikacja powinna zostać wstrzymana a Ty wrócisz do IDE. Tam najprawdopodobniej będziesz miał w edytorze kodu podświetloną linię która sprawiła problem (lub sąsiadującą z nią linię - zależy).
Generalnie: kombinuj, ucz się narzędzia. Inaczej programujesz metodą rzucania lotkami w tarczę przy zamkniętych oczach. Czasami coś się uda trafić.