读书人

这两个变量是咋回事

发布时间: 2012-03-20 14:01:11 作者: rapoo

这两个变量是怎么回事?
编译怎么也不报错?这两个m变量不是全局的吗? unit1中使用的m变量是那个单元的m变量?
//----------------------------------------------
unit Unit2;

interface
type
TLT=class(TObject)
private
public
end;

var
m:Integer;

implementation

end.

//------------------------------------------------
unit Unit3;

interface
type
TYD=class(TObject)
private
public
end;

var
m:Integer;
implementation

end.


//------------------------------------------------
uses Unit2, Unit3;
var
Form1: TForm1;
Lt:TLT;
Yd:TYD;
implementation


{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
m:=1;
end;

end.

[解决办法]
应该用的是unit3的m,用放在引用后面的。
[解决办法]
估计要看编译顺序了,这样的设计是极不合理的.
不过,你可以用前缀访问每个unit的m
如:
unit2.m:=1;
unit3.m:=2;


[解决办法]
研究一下可以,活不能这么干,以后谁看到这样的程序都会骂娘
[解决办法]
哈哈
这样也可以啊

读书人网 >.NET

热点推荐