Форум: "Основная";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];
ВнизСвязь между юнитами Найти похожие ветки
← →
Micah'GF (2002-12-23 17:55) [0]Прописываю в основной программе USES Forms, Variables, mProc, main in "main.pas" {MainForm} ;
В Variables определена переменная VAR GLOBAL_INIOpened: boolean;, а в main пытаюсь ее использовать.. компилятор ругается - говорит переменная не определена...
Точно также происходит с несколькими модулями: в mProc прописано procedure ErrEx(code:integer); а при обращении из main говорит что процедура не определена...
Вообще как определяется фидимость переменных и процедур между юнитами?
← →
Gerd (2002-12-23 18:03) [1]Типа того?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleServer,
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses unit2;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.showmodal;
end;
end.
← →
MBo (2002-12-23 18:07) [2]в других модулях видно то, что описано в секции interface
← →
Micah'GF (2002-12-23 18:19) [3]program Server; // server.dpr
uses
Forms, Variables, mProc,
main in "main.pas";
{$R *.res}
VAR
UNIT Variables; // variables.pas
interface
VAR
GLOBAL_INIOpened: boolean;
GLOBAL_CountConn: integer;
Users: UserList;
// main.pas
GLOBAL_INIOpened := TRUE <<<< на это компилер ругается - говорит переменная не определена...
← →
Skier (2002-12-23 18:24) [4]UNIT Variables; // variables.pas
VAR
GLOBAL_INIOpened:boolean;
interface
VAR
GLOBAL_CountConn:integer;
Users: UserList;
← →
Skier (2002-12-23 18:29) [5]>Skier © (23.12.02 18:24)
Мда...Ерунда полная...
>Micah"GF
А ты точно говоришь uses variables в main.pas ?
← →
Micah'GF (2002-12-23 18:33) [6]2Skier
если так делаю говорит:
[Error] mProc.pas(2): "INTERFACE" expected but "USES" found
[Error] mProc.pas(3): Declaration expected but "INTERFACE" found
← →
Micah'GF (2002-12-23 18:38) [7]2Skier
модули подключаю в проекте
см. Micah"GF (23.12.02 18:19)
← →
Skier (2002-12-23 18:41) [8]>Micah"GF
В модуле main.pas нужно написать uses variables
← →
Dona (2002-12-23 18:53) [9]>Micah"GF
В main.pas - uses Variables внутри секции Interface
← →
Micah'GF (2002-12-23 18:54) [10]а что если придется использовать из mProc там тоже добавить в uses? а что будет если в нескольких модулях в uses прописать один - например Variables? переменные из этого модуля в разных будут связаны и иметь одно значение или заново определятся?
← →
Dona (2002-12-23 18:58) [11]
>а что будет если в нескольких модулях в uses прописать один - например Variables?
Объекты, объявленные в interface модуля Variables, смогут использоваться во всех этих модулях.
← →
Micah'GF (2002-12-23 19:08) [12]ладно спасибо
пока вроде все работает
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c