读书人

Pointer 如何转换为指定的类

发布时间: 2012-02-12 17:16:33 作者: rapoo

Pointer 怎么转换为指定的类
procedure _Thread_SQ_(_ball_: Pointer);
var
b: Ball;
begin
b := _ball_ as Ball;
showmessage(b.link_sq);
end;

_ball_ 是传进来的 Ball 类 Pointer
现在想 b := _ball_ as Ball;
怎么搞都不成功!!

帮帮忙~~~谢谢了!!

[解决办法]
procedure ShowClass(obj : Pointer);
var
myObj : TMyClass;
begin
myObj := TObject(obj) as TMyClass;
Showmessage(myObj.ClassName);
end;


var
s : TMyClass;
begin
s := TMyClass.Create;
ShowClass(Pointer(s));
s.Free;
end;


[解决办法]
windows.CreateThread(nil,0,@_Thread_SQ_,Pointer(b),0,b.thread_id_sq);
@b改为Pointer(b),或直接用b,b已经是个指针了,不要再取地址
[解决办法]
管理选项给分

读书人网 >.NET

热点推荐