请问:在Delphi中有没有静态成员变量?怎样实现?

baifu 2005-04-06 10:53:57
好像从来没有在Delphi的书中见到过关于静态成员变量的介绍?难道没有这个功能?用什么方法
可以替代一下?
对于一个OOP语言来说,没有这个功能不太好吧!
...全文
145 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
何鲁青 2005-04-07
  • 打赏
  • 举报
回复
unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
TDevice = Class(TSpeedButton) //定义一个抽象的设备类
{这个类里面只是实现图形的虚拟,还提供一些纯虚方法的接口}
private
counter:integer;
procedure showCounter(Sender: TObject);
public
constructor Create(AOwner: TComponent); override;
end;
var
Form1: TForm1;

implementation

{$R *.dfm}
procedure TDevice.showCounter(Sender: TObject);
begin
showmessage(IntToStr(Counter));
end;

constructor TDevice.Create(AOwner: TComponent);
begin
randomize;
inherited;
self.Parent:=AOwner as TWinControl;
inc(counter);
self.Left:=random(form1.Width);
self.Top:=random(form1.Height);
self.OnClick:=showCounter;
end;
procedure TForm1.Button1Click(Sender: TObject);
var ty:TDevice;
begin
ty:=TDevice.Create(self);
end;

end.
-----------------------
为什么我的不行????楼主诊的测试通过了吗????
何鲁青 2005-04-07
  • 打赏
  • 举报
回复
真的可行吗???看看学习...
baifu 2005-04-07
  • 打赏
  • 举报
回复
我已经找到方法了,在类里面声明一个变量,比如是i:integer;然后在每次调用构造函数以后,就对i的值进行改变。从而实现对象的计数功能。
何鲁青 2005-04-07
  • 打赏
  • 举报
回复
就是了...
sspeak 2005-04-07
  • 打赏
  • 举报
回复
全局变量和静态成员变量是完全一样的.
delphiseabird 2005-04-07
  • 打赏
  • 举报
回复
你用的就是全局变量,而不是静态变量,delphi只支持静态方法,不支持静态变量
何鲁青 2005-04-07
  • 打赏
  • 举报
回复
up...
楼主是怎么实现的?除了全局变量之外我觉得没有别的办法了...
advancejar 2005-04-06
  • 打赏
  • 举报
回复
const
{+j}i:integer{-j}
i:=i+1;
baifu 2005-04-06
  • 打赏
  • 举报
回复
这个我也考虑过,但是我现在想在类里面实现,对生成的对象进行计数.
ly_liuyang 2005-04-06
  • 打赏
  • 举报
回复
Delphi不支持静态的

使用全局变量,在初始化Unit的时候Create对象,效果一样

http://lysoft.7u7.net
beyondtkl 2005-04-06
  • 打赏
  • 举报
回复
type

TD = class
private
public
end;

var
a: Integer; // 類似 static data member
implementation

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧