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

Вниз

Работа с классом   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
2-1228400790
ячсмитьбю
2008-12-04 17:26
2009.01.18
Назначение размерности массиву


2-1228291866
b@v
2008-12-03 11:11
2009.01.18
MySQL & Delphi


15-1226900583
mml
2008-11-17 08:43
2009.01.18
Вопрос к тем, кто читал книгу Агурова "Практика программирования


2-1228493669
Смирнов Сергей
2008-12-05 19:14
2009.01.18
Поддержка Proxy


2-1228165884
aKor
2008-12-02 00:11
2009.01.18
TDBChart