delphi 全局变量的定义与初始化赋值
2009-10-31 20:50
519 查看
delphi全局变量的定义与赋值主要有下面几种方法:
1.
全局变量的初始化
在最后结束的end.之前,增加initialization关键字,然后加入对全局变量的初始化,这样就可以初始化全局变量了.不论在interface还是在implementation部分的全部变量,都可以这么来初始化
//省略前面的interface, uses, type.
var
i: Integer;
implementation
var
j: Integer;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Inc(i);
Inc(j);
Form1.Caption := IntToStr(i) + ' ' + IntToStr(j);
end;
initialization
i := 100;
j := 200;
end.
2. 新建一个公用单元,专门放置公用全局变量呗
unit untCommon;
interface
var
v1:integer;
v2:string;
end.
-----------------
unit unit1;
interface
uses
windows, ................, untCommon ; //在每个需要使用v1、v2变量的单元中引用上面那个单元untCommon就可以了
3.跟 一般变量赋值差不多!
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
/////////////////////////////
//在 implementation上定义的全局变量在所有单元可见
var teststr:string;
implementation
{$R *.dfm}
//////////////////////////////
//在implementation下定义的只对本单元可见
var teststr1:string;
procedure TForm1.Button1Click(Sender: TObject);
begin
//////////////////////
//对teststr赋值
teststr := '我是对所有单元都可见的';
showmessage(teststr);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
/////////////////////
//对teststr11赋值
teststr1 := '我只对本单元可见';
showmessage(teststr1);
end;
end.
1.
全局变量的初始化
在最后结束的end.之前,增加initialization关键字,然后加入对全局变量的初始化,这样就可以初始化全局变量了.不论在interface还是在implementation部分的全部变量,都可以这么来初始化
//省略前面的interface, uses, type.
var
i: Integer;
implementation
var
j: Integer;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Inc(i);
Inc(j);
Form1.Caption := IntToStr(i) + ' ' + IntToStr(j);
end;
initialization
i := 100;
j := 200;
end.
2. 新建一个公用单元,专门放置公用全局变量呗
unit untCommon;
interface
var
v1:integer;
v2:string;
end.
-----------------
unit unit1;
interface
uses
windows, ................, untCommon ; //在每个需要使用v1、v2变量的单元中引用上面那个单元untCommon就可以了
3.跟 一般变量赋值差不多!
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
/////////////////////////////
//在 implementation上定义的全局变量在所有单元可见
var teststr:string;
implementation
{$R *.dfm}
//////////////////////////////
//在implementation下定义的只对本单元可见
var teststr1:string;
procedure TForm1.Button1Click(Sender: TObject);
begin
//////////////////////
//对teststr赋值
teststr := '我是对所有单元都可见的';
showmessage(teststr);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
/////////////////////
//对teststr11赋值
teststr1 := '我只对本单元可见';
showmessage(teststr1);
end;
end.
相关文章推荐
- delphi 全局变量的定义与初始化赋值
- DSP2812调试:全局变量初始化不是指定的赋值结果
- 第一题 定义分数(Fraction)类: 1、成员变量:分子、分母 2、方法: (1)自定义初始化方法(初始分子和分母) (2)分子的赋值、取值方法 (3)分母的赋值取值方法 (4)打印分数信息
- 多个文件使用同一全局变量(未初始化) 以及局部变量重复定义
- delphi 全局变量 HInstance 到底是在什么时候赋值的?
- keril中不能定义全局变量时初始化的原因
- 定义一个全局变量设初值为20,在page_load里面给其赋值为50,在别的按钮事件里面引用还是为20,怎么回事?
- 转载_keril中不能定义全局变量时初始化的原因
- C++中,全局阈只能声明、初始化变量; 不能用于赋值、运算、调用函数等
- 定义非static的未初始化的全局变量是流氓行为
- 变量的定义、声明、赋值和初始化的区别
- 【Java】变量声明、定义、赋值与初始化区别
- delphi工程中如何定义全局变量
- 解决C++全局变量只能初始化不能赋值的问题
- 全局变量只能初始化不能赋值
- 为什么局部变量必须手动赋值?而全局变量不用手动赋值也可以初始化?
- 遇到的问题-----------定义一个全局变量,在page_load里赋值,但在其他按钮中调用仍为空
- 关于全局变量初始化与赋值问题的思考
- delphi 定义变量同时赋值
- C C++全局变量初始化 initializer element is not constant 错误 c++中为什么不能对全局变量在函数外赋值