H
hxning
Unregistered / Unconfirmed
GUEST, unregistred user!
treenode的属性data,这是一个pointer,很多例程包括delphi本身的帮助都是
与一个record的指针相关在一起的.但是,按照帮助上说的pointer是可以指向任何
类型的.但是我曾经尝试定义一个指针指向一个类,并通过指针访问类实体中的信息,如下:
type
TAClass = class; //这里是一个类的定义
PPointer = ^TAClass; //定义指针类型
...
var
lpPointer: FPointer; //在某函数中定义一个指针类型变量
aClass: TAClass; //在某函数中定义一个类实体变量
begin
...
lpPointer = PPointer(aClass); //[red]在这里就已经发现虽然指针内的结构等同于类,但是内容却已面目全非了[/red]
treeview.items.addnodeobject(..., lpPointer); //试图把类的实体通过指针存放在treenode的data中
...
end
结果并非想象的结果,不知道是我程序有问题,还是指针不能这样使用呢?请各位高手指正,谢啦
与一个record的指针相关在一起的.但是,按照帮助上说的pointer是可以指向任何
类型的.但是我曾经尝试定义一个指针指向一个类,并通过指针访问类实体中的信息,如下:
type
TAClass = class; //这里是一个类的定义
PPointer = ^TAClass; //定义指针类型
...
var
lpPointer: FPointer; //在某函数中定义一个指针类型变量
aClass: TAClass; //在某函数中定义一个类实体变量
begin
...
lpPointer = PPointer(aClass); //[red]在这里就已经发现虽然指针内的结构等同于类,但是内容却已面目全非了[/red]
treeview.items.addnodeobject(..., lpPointer); //试图把类的实体通过指针存放在treenode的data中
...
end
结果并非想象的结果,不知道是我程序有问题,还是指针不能这样使用呢?请各位高手指正,谢啦