Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];

Вниз

Создание классов   Найти похожие ветки 

 
Tab   (2006-10-18 19:46) [0]

Создал следующие классы:
type
  MainC = class
   t: integer;    
   //Cl1
   pt_l: array [1..2] of integer;
   fr: boolean;
   //Cl2
   pt: array of Integer;
   procedure Calc; virtual; abstract;
 end;
type
 Cl1 = class (MainCLass)
constructor Create;
   procedure Calc; override;
 end;
 
 type
  Cl2 = class (MainCLass)
   constructor Create;
   procedure Calc; override;
 end;

-- в программе делаю следующим образом:
var
  List_obj: array [1..100] of MainCLass;
 ..
 List_obj[1]:=Cl1.Create;
 List_obj[2]:=Cl2.Create;
 ..
 for i:=1 to 2 do
List_obj[1]:=calc;

-- но Calc не вызвается ни для Cl1 ни для Cl2


 
Loginov Dmitry ©   (2006-10-18 19:50) [1]

А где реализация методов?


 
Kolan ©   (2006-10-18 19:51) [2]


> List_obj[1]:=calc;

Чтоо это?

List_obj[1].Calc так может?

PS
 Неужели перед названием класса сложно поставить букву "T"


 
Tab   (2006-10-18 19:53) [3]


> List_obj[1].Calc так может?

да, опечатка.  сорри.


 
Kolan ©   (2006-10-18 19:55) [4]


>
>
> да, опечатка.  сорри.
>

Дык это и есть ошибка?


 
Tab   (2006-10-18 20:10) [5]


> Дык это и есть ошибка?

нет , при копировании ошибся.


> А где реализация методов?

расчеты, рисование на канве


 
Kolan ©   (2006-10-18 20:13) [6]


> нет , при копировании ошибся.

Тогда с чего ты взял что они не вызываются? Кроме того

List_obj: array [1..100] of MainCLass;

Cl1 = class (MainCLass)

Cl2 = class (MainCLass)


А вверхуууу:

MainC = class


 
Tab   (2006-10-18 20:18) [7]

вот более полная картина

type
  MFigure_= class
   MPen : TGPPen;
   objType: integer;
   //MLine
   pt_l: array [1..2] of TGPPoint;
   first_p_set: boolean;
   //MPoly
   points_count: integer;
   pt: array of  TGPPoint;
   //
   procedure Draw(gp: TGPGraphics); virtual; abstract;
   procedure Calc; virtual; abstract;
 end;

type
 MLine = class (MFigure_)
   procedure Draw(gp: TGPGraphics); override;
   procedure Calc; override;
 end;

 type
  MPoly = class (MFigure_)
   points_count: integer;
   first_p_set: boolean;
   constructor Create; overload;
   procedure Draw(gp: TGPGraphics); override;
   procedure Calc; override;
 end;

procedure MLine.Draw(gp: TGPGraphics);
begin
 gp.DrawLine(MPen,pt_l[1],pt_l[2]);
end;

procedure MPoly.Draw(gp: TGPGraphics);
begin
 gp.DrawPolygon(MPen, PGPPoint(@pt[0]), points_count);
end;


 
Tab   (2006-10-18 20:24) [8]

разобрался, вопрос закрыт. Kolan, Loginov Dmitry спасибо за участие!



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.048 c
5-1141155140
Чайник
2006-02-28 22:32
2006.11.05
Не ловятся сообщения от мышиного колесика WM_MOUSEWHEEL


6-1150292201
Интересующийся
2006-06-14 17:36
2006.11.05
Список всех машин в диапозоне между двумя IP


15-1160834854
Длинный логин не получился:(
2006-10-14 18:07
2006.11.05
О хамстве и мате ...


3-1157540132
vodvorezlaya
2006-09-06 14:55
2006.11.05
Помогите разобраться с компонентом TDBListBox


2-1161614697
pathfinder
2006-10-23 18:44
2006.11.05
Представление строки как последовательности байтов..





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский