DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: lixuan123
今日帖子: 0
在线用户: 11
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 ciscoren (yaya) ★☆☆☆☆ -
普通会员
2004/2/19 1:11:08
标题:
变量声明问题!很重要!求助 浏览:1280
加入我的收藏
楼主: 请问再implementation 前声明的VAR x,y
和再implementation 后声明的 var d,f 一样吗?
放在各个地方都是什么意思?
请看这个程序,
这两个变量为什么不在一个地方声明?


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  bOpen:Boolean;
implementation

{$R *.dfm}
uses unit2;
var
  ModellessDlg:Tform2; 
procedure TForm1.FormCreate(Sender: TObject);
begin
bopen:=false;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
  if not bOpen then
  begin ModellessDlg:=TForm2.create(application);
  ModellessDlg.show;
  bopen:=true;
  modellessdlg.parentform:=form1;
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
   if bopen then
   begin
   modellessdlg.free;
   bopen:=false;
   end;
   close;
end;

end.

这两个变量为什么不在一个地方声明?

----------------------------------------------
-
作者:
男 blueyestar (蓝夜孤星) ★☆☆☆☆ -
盒子活跃会员
2004/2/19 1:42:28
1楼: 有效范围不一样
----------------------------------------------
真正的程序员用C,聪明的程序员用DELPHI
作者:
男 sephil (NAILY Soft) ★☆☆☆☆ -
盒子中级会员
2004/2/19 3:30:26
2楼: implementation前声明时是全局变量,其他单元也可以访问
implementation后声明时是局部变量,本单元才可以访问

----------------------------------------------
Copyright 2008 ? NAILY Soft

Click here to redirect to my home
Click here to redirect to my blog
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行70.3125毫秒 RSS