Delphi类成员变量的初始化问题(100分)

  • 主题发起人 主题发起人 GTornado
  • 开始时间 开始时间
G

GTornado

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个packed record类型 -> RECORD_A,里面有4个成员
我还有一个类TCLASS,在这个类里,我定义了一个比较大的数组
m_AryTest: array[ 0..255 ] of RECORD_A;
请问,我如何静态初始化这个成员变量?不通过代码初始化。
 
GetMem(m_AryText,255* sizeof(RECORD*A));
 
GetMem(m_AryText,255* sizeof(RECORD_A));
 
楼上的兄弟,我说是静态初始化,我有很多直接数据需要填充进去,并且是无规律的。
 
类是一个声明而已,仅能声明类似静态的类函数,又不确定类示例的地址,如何让编译器预先创建类的成员啊? 皮之不存,毛将焉附;

如果是静态声明全局的或单元内的静态record数组,可以下面这样。
type
TYPRecord = packed record
i: integer;
s: string;
end;

const
yp: TYPRecord = (i: 88
s: 'hi');
ypa: array[0..2] of TYPRecord =
((i: 66
s: 'hi66')
, (i: 77
s: 'hi77')
, (i: 88
s: 'hi88'));
 
是我说的不明白。我是想让那个数组变成静态成员变量。但是delphi不支持静态成员函数。于是我想如何才能用变通的办法。
 
定义一个属性,映射到你的静态变量上就行了.
 
后退
顶部