Форум: "Начинающим";
Текущий архив: 2009.01.18;
Скачать: [xml.tar.bz2];
ВнизРабота с классом Найти похожие ветки
← →
Te (2008-12-03 01:00) [0]Создаю класс
Type
TMClass=Class
private
i:integer;
public
constructor Create(a:integer);
function AK():integer;
end;
Вместо нужного результата он возвращает огромное значение, конструктор отрабатывает правильно, а вот в функции значения очень большие.
Подскажите, что я делаю не так???
в конструкторе пишуi:=a;
function TMClass.AK():integer;
begin
result:=i+i;
end;
при нажатие кнопкиvar
v:TMClass;
begin
TMClass.create(2);
edit1.text:=inttostr(d.ak);
end;
← →
Te (2008-12-03 01:06) [1]Числа получаются отрицательные
← →
KilkennyCat © (2008-12-03 01:15) [2]... и всегда одинаковые... независимо хоть create(2) хоть create(3)...
← →
Andy BitOff © (2008-12-03 01:16) [3]А как у тебя это компилируется?
var
v:TMClass;
begin
TMClass.create(2);
edit1.text:=inttostr(d.ak);
end;
← →
KilkennyCat © (2008-12-03 01:17) [4]
> Andy BitOff
Дело не в опечатке v и d
Дело в неправильном вызове конструктора.
Правильно: v := TMClass.create(2);
← →
Te (2008-12-03 01:19) [5]
> KilkennyCat © (03.12.08 01:17) [4]
Спасибо всем, пойду дальше изучать классы!!!
← →
{RASkov} © (2008-12-03 13:19) [6]> Правильно: v := TMClass.create(2);
Ну почему, можно и так:
with TMClass.create(2) do
try
edit1.text:=inttostr(ak);
finally
Free;
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.01.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c