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