还是class的问题(30分)

  • 主题发起人 主题发起人 不是普通的笨
  • 开始时间 开始时间

不是普通的笨

Unregistered / Unconfirmed
GUEST, unregistred user!
请大家看看这段代码:
TcdType=(ctsingle,ctdouble,ctnone);
type
TCds=record
cdstype:TcdType;
startvalue:integer;
endvalue:integer;
cdscount:integer;
cdspervalue:integer;
cdspos:string;
cdsid:integer;
end;

type
TPls=class(Tcomponent)
private
FHandCount:integer;

public
a:array [1..14] of TCds;
mastervalue:integer;
property handcount:integer read Fhandcount write Fhandcount;
........
constructor Create(Owner: TComponent);
destructor Destroy;
end;

constructor Tpls.create(Owner: TComponent);
begin
inherited Create;
// Initialize inherited parts
Fhandcount:=0;
end;

destructor Tpls.Destroy;
var i:integer;
begin
inherited destroy;
end;


var
mPl:array [1..4] of Tpls;
在调用
mpl.create(self)时出错:
project XX.exe raised exception class EAccessViolation with message 'Access violation at address 00412CCA in module 'XX.EXE'.rade of address FFFFFFFF'.process stopped Use Step or Run to continue.

还有什么错误没被发现?
 
mpl:=Tpls.create(self)
 
楼上的看到了关键了
看来楼主不小心的很!
 
迷糊说的没错哦。
 
迷糊其实不迷糊,哈哈
 
呵呵—这也太大意了吧,低级错误啊……长点记性吧
 
是啊,真是教训啊!
其实发完帖子我就已经解决了,不过还是谢谢各位的热心。参与的都有分哦!
 
多人接受答案了。
 
后退
顶部