类的使用和定义
我在写自己的类,老是发现报错,错的原因总是一样的,就是在给成员变量赋值的时候;于是我写了个很简单的类:
unit simpleclass;
interface
uses
Windows,Classes;
type
democlass=class(TObject)
private
Fintval:Integer;
public
procedure initval(Value:Integer);
end;
implementation
procedure democlass.initval(Value:Integer);
begin
FintVal:=Value;
end;
end.
=========================================
觉的类的定义应该没有什么问题吧,但是在用的时候只要运行到赋值就报错,报的是不能访问000000xxx的内存区域什么的。不知道问题出在哪里?
我把使用这个类的方法也说一下,有可能是在用法上出了问题,是不是要像C一样初始化类呢?还是要有类的构造和析构呢?
我的类的用法是这样的,把这个simpleclass.pas拷贝到同一个目录下;然后在uses中添加:simpleclass;然后就是使用了,比如是buttonclick:
procedure TMainFrm.Button1Click(Sender: TObject);
var demo:democlass;
begin
demo.InitVal(123); //就在这里报错了;
end;
于是我就把函数内的赋值改成对函数内变量的赋值,然后这里的调用就成功了;
procedure democlass.initval(Value:Integer);
var intVal:integer;
begin
intVal:=Value;
end;
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
这个可能是个简单的问题,但是我还是不常用自己定义的类的,所以也没有接触,对不起有没有高手能给个帮助。能够一针见血的最好。谢谢