Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с классом


Te ©   (2008-12-03 01:00:00) 

Создаю класс
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;


{RASkov}   (2008-12-03 13:19:00) [1]

> Правильно: v := TMClass.create(2);

Ну почему, можно и так:
with TMClass.create(2) do
try
 edit1.text:=inttostr(ak);
finally
 Free;
end;


Te   (2008-12-03 01:19:00) [2]


> KilkennyCat ©   (03.12.08 01:17) [4]

Спасибо всем, пойду дальше изучать классы!!!


KilkennyCat   (2008-12-03 01:17:00) [3]


> Andy BitOff

Дело не в опечатке v и d
Дело в неправильном вызове конструктора.
Правильно: v := TMClass.create(2);


Andy BitOff   (2008-12-03 01:16:00) [4]

А как у тебя это компилируется?
var
v:TMClass;
begin
TMClass.create(2);
edit1.text:=inttostr( d.ak);
end;


KilkennyCat   (2008-12-03 01:15:00) [5]

... и всегда одинаковые... независимо хоть create(2) хоть create(3)...


Te   (2008-12-03 01:06:00) [6]

Числа получаются отрицательные


Наверх

Титульная страница Поиск, карта сайта Написать письмо