2
我转换GraphicEx项目至2009年德尔福迁移到德尔福2009年 - 无效的类型转换错误
我有麻烦,在单位Scanf_c.pas转换下面的过程。这里的问题是:
With TscRec(FType) do begin
F型是整数,TscRec定义:
TscRec = packed record // Has size of an integer
Case byte of
0: (Typ : byte; Size : char; Flags : word;);
1: (SizeType : word; iFlags : smallInt;);
end;
看来,这个代码是在2007年德尔福工作正常,但我在2009年德尔福编译它有问题。编译器错误是“Invalid Typecase”。这个问题是由类型转换FType造成的,TSype是一个记录的TScRec。
有人在这里有与德尔福2009年相同的问题,并有一个解决方案。
THX
+1 - 它与AnsiChar一起工作 – 2009-09-22 08:21:51
删除“疯狂猜测”,因为这实际上是答案。 :)使用Char的第一个分支将是5个字节长,这将不再是一个整数的大小(4) – 2009-09-22 08:32:19