Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.15;
Скачать: CL | DM;

Вниз

Private и public   Найти похожие ветки 

 
Merry   (2006-09-29 20:59) [0]

В одном модуле  unit main объявляю:
Public
Var1:extended;
….
Далее присваиваю:
Var1:=StrToFloat(Edit1.Text);

В другом модуле unit otchet использую:
Uses main;
Но почему-то переменная var1, когда её вызываю в этом модуле otchet,
не известна и не считывается из unit main.
Как сделать, чтобы объявленное значение переменной в первом модуле, было известно второму модулю?


 
Palladin ©   (2006-09-29 21:01) [1]


>  когда её вызываю в этом модуле otchet,

переменные (а в данном случае аттрибут класса) не вызываются, бо не исполняемый код... и не призываются, бо не святой дух и не призывники...


> не известна и не считывается из unit main.

и как это выражается?


 
Джо ©   (2006-09-29 21:05) [2]

Если "public", то это уже не "переменная", а поле или свойство какого-то класса.


 
Merry   (2006-09-29 21:05) [3]

Тогда вообще: Как сделать, чтобы объявленное значение переменной в первом модуле, было известно второму модулю?


 
Zeqfreed ©   (2006-09-29 21:06) [4]

> [0] Merry   (29.09.06 20:59)

Экземпляр класса писать не забываешь?


 
Zeqfreed ©   (2006-09-29 21:08) [5]

> [3] Merry   (29.09.06 21:05)

Это не переменная, а поле конкретного объекта или класса (если объявлено как классовое). Доступ к нему, соответствунно, осуществляется с указанием имени экземпляра (или самого класса) и последующим разыменовыванием оного.


 
DrPass ©   (2006-09-29 23:10) [6]


> Как сделать, чтобы объявленное значение переменной в первом
> модуле, было известно второму модулю?

Медленно поднимаешь свой пытливый взор вверх по тексту, пока не встретишь строки вида
type
 TForm1 = class(TForm)

Сделай так:

var
 var1: Extended
type
 TForm1 = class(TForm)


 
DrPass ©   (2006-09-29 23:11) [7]

//только про точку с запятой после extended не забудь


 
RASkov   (2006-09-30 00:02) [8]

> Merry


unit unit1;
....
type
 TForm1 = class(TForm)
....
public
  Int: Integer;
  Bt: Boolean;
  S: String;
  Var1:extended;
end;
....
Var1:=StrToFloat(Edit1.Text);
.....

unit unit2;
....
implimintation
uses unit1;

procedure xxx;
begin
with unit1 do begin //указываем из кокого модуля брать "переменную"
 Int:=5;
 B:=True;
 S:="stroka";
 ShowMessage(FloatToStr(Var1));
end;
end;


А вооще "глобальную" переменную то так [6]
и [7]:)


 
Desdechado ©   (2006-09-30 15:04) [9]

RASkov   (30.09.06 00:02) [8]
> with unit1 do begin //указываем из кокого модуля брать "переменную"
Глупости. Без создания экземпляра TForm1 и обращения к нему никакие unit1 не помогут.


 
Kolan ©   (2006-09-30 17:39) [10]

Тут переводчик еще работал:

> В одном модуле  unit main объявляю:


А тут поломался?

> В другом модуле unit otchet использую:


otchet = Report


 
RASkov   (2006-09-30 22:56) [11]

> [9] Desdechado ©   (30.09.06 15:04)

Согласен, только я не говорил, что так нужно делать, я имелл ввиду как можно.
> Как сделать, чтобы объявленное значение переменной в первом
> модуле, было известно второму модулю?

Или мой ответ протеворечит? А уж создано или нет, в момент обращения, на совести программера.


 
Loginov Dmitry ©   (2006-09-30 23:03) [12]

RASkov   (30.09.06 22:56) [11]
Или мой ответ протеворечит?

[8] - это полнейший бред


 
Kolan ©   (2006-10-01 00:34) [13]


> RASkov   (30.09.06 00:02) [8]

И что скомпилилось?


 
RASkov   (2006-10-01 01:17) [14]

> [13] Kolan ©   (01.10.06 00:34)

Нет:) Вместо Unit1 надо Form1.... А вот для глобальных unit1.


 
Kolan ©   (2006-10-01 01:19) [15]


> Нет:)

А я уж дамал я сума сошел :)


 
RASkov   (2006-10-01 01:19) [16]

> [12] Loginov Dmitry ©   (30.09.06 23:03)

Ладно.... уговорили:)


 
RASkov   (2006-10-01 01:21) [17]

> [15] Kolan ©   (01.10.06 01:19)

Называется "Семь раз прочти один запость" © NewПословица



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

Текущий архив: 2006.10.15;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.097 c
2-1159343114
Dr. Genius
2006-09-27 11:45
2006.10.15
Объявление модулей в interface и implementation


15-1159198548
AntiUser
2006-09-25 19:35
2006.10.15
Ну помогите мне пожалуйста книжкой и советом


2-1159542104
DROWSY
2006-09-29 19:01
2006.10.15
Как запретить многократный запуск процесса?


2-1159175122
Серый
2006-09-25 13:05
2006.10.15
Сообщение об ошибке


4-1149009608
Варяг
2006-05-30 21:20
2006.10.15
Загрузка и отображение картинки