Форум: "Система";
Текущий архив: 2003.12.12;
Скачать: [xml.tar.bz2];
ВнизВопрос о модулях. Найти похожие ветки
← →
StasVashuk (2003-10-06 16:40) [0]Есть проэкт.
у него Uses a,tmp;
Модуль А имеет процедуру присваивания и функцию получения значения единственой его переменной "N" (Var N:word; которую можно поместить в позиции !1! и !2!.При этом понятно в позиции !1! "N" будет видна программе, которая использует "А", а в !2! не доступна.)(см ниже)
Модуль Tmp использует "a" и повторяет все его функции с буквой "T" в конце(см ниже).
В нём я ставил "Uses A;" в местах !A! и !B!.
Вопрос №1 - В чём разниза.
Далее, я протестировал ЭТО и получил (СМ программу) след. результаты, причём ни от положения Uses в "tmp" ни от положения var в "A" этот результат не зависит.
модуль а как бы есть в памяти в ОДНОМ экземпляре, и "А" и "Tmp" используют один и тот же модуль.
Вопрос №2, как сделать так, чтобы было как бы ДВА модуля "А" в памяти, один для программыЮ другой для модуля "TMP".
+++++
unit a;
interface
{!1!}
function getval: Word;
procedure setval(v: Word);
implementation
{!2!}
function getval: Word;
begin
result := n;
end;
procedure setval(v: Word);
begin
n:= v;
end;
end.
+++++
unit Tmp;
interface
{!A!}
function getvalT: Word;
procedure setvalT(v: Word);
implementation
{!B!}
function getvalT: Word;
begin
result := getval;
end;
procedure setvalT(v: Word);
begin
setval(v);
end;
end.
+++++
program Q;
uses a, tmp;
begin
setval(2);
setvalt(10);
writeln(getval){=10 в любом случае}
writeln(getvalT){=10 в любом случае}
end.
+++++
← →
Плохиш_ (2003-10-06 16:49) [1]
> Вопрос №1
Шли бы Вы, батенька, книжки читать
> Вопрос №2
Сделать два модуля A и ответ на вопрос 1
← →
StasVashuk (2003-10-07 10:33) [2]Какой ты добрый и весёлый.
Кто нибудь умнее, ответьте на мои вопросы пожалуйста
← →
pasha_676 (2003-10-07 11:30) [3]Два модуля в памяти бесмыслиться. Модуль не может иметь экземпляры. Тебе надо понять что есть модуль. Скорее всего тебе надо два объекта (или может два потока). Ну а вопрос 1 - это действительно читайте книжки по паскалю.
← →
Digitman (2003-10-07 14:00) [4]
> {=10 в любом случае}
любопытно, а что ты ожидал увидеть в ином случае, если бы он был возможен при такой реализации ?
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.12.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c