Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Unit_ы и всё что с нимисвязано...

Автор: Vardes 21.12.2006 20:23

Хотел вот у знатоков спросить,как правильно создавать модули...т.е. как правильно в одном модуле описать классы и методы этого класса ,чтоб с ними мона было бы работать в другом...

Автор: klem4 21.12.2006 20:45

Подключаешь этот модуль в разделе implementation второго модуля и используешь из него что нужно ... По конкретней приведи пример в чем у тебя проблема

Автор: Vardes 22.12.2006 13:52

Вот к прмеру, если мы в одном модуле описали класс, то в др. мы пользуемся уже объектами этого класса?

Автор: volvo 22.12.2006 16:01

Если ты в одном модуле описал Тип класса, но не описал его экземпляров, то в другом модуле, естественно, ты можешь пользоваться ТОЛЬКО описанием типа:

unit m1;
interface

type
T1 = class
...
end;

implementation
...
end.


unit m2;
interface
...

implementation
uses m1;
var my_class: T1; // Создаешь экземпляр и используешь - ТОЛЬКО в m2
...
end.
Если же ты в m1 уже создал и переменную - то можешь во втором модуле использовать как сам тип (для создания еще одной переменной), так и саму уже созданную переменную:
unit m1;
interface

type
T1 = class
...
end;
var
my_class: T1;

implementation
...
end.


unit m2;
interface
...

implementation
uses m1;
var my_class_2: T1; // Создаешь ЕЩЕ ОДИН экземпляр и используешь - ТОЛЬКО в m2

procedure P;
begin
my_class = T1.Create; // конструируешь экземпляр, описанный в M1
... // и работаешь с ним
end;
...
end.


Первый вариант (на мой взгляд) предпочтительнее...