delphi procedure访问私有变量问题
procedure btnGetEnrollDataToFileClick(Sender: TObject);
procedure btnSetSManagerPasswordClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure SearchEquBtnClick(Sender: TObject);
procedure readAllData();
private
{ Private declarations }
FCommParam: TCommParam;
procedure 就是readAllData()
pSB100PC: TSB100PC; 展开
如果是和在按钮的点击事件里一样是同一个类的方法,是可以访问的
如果是全局的函数过程(不是类的方法)要看有没有访问权限
private,protected 属性,变量,方法是不可访问的!!!
public,published 属性,变量,方法是可以访问的,没有任何问题!!!
类方法,不可以不用对象访问对象的成员(属性,变量,方法)
类方法是针对整个类的,不是对针对具体对象的,无self引用不能属于对象的的成员(属性,变量,方法)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Show100();
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
a:string;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Show100;
begin
a:='100';
showmessage(a);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Show100;
end;
end.
没问题,如上面的Show100访问a一样。
例子:
在自定义的类中使用form1中private变量v1,应写成:
form1.v1
不知道我理解的对不对
也就是 类函数只能访问他自己的私有属性。