看得不太懂,record前加多一个packed是什么意思?然后case是没有end;结束的,case里面的Integer是一个类型,怎么可以判断呢?谢谢指教
type
  TVector3f = array[0..2] of single;  TD3DVector = packed record
    case Integer of
      0 : (X: single;
           Y: single;
           Z: single);
      1 : (V: TVector3f);
  end;

解决方案 »

  1.   

    TO:cncharles(旺仔) 
    这个世界有什么问题会提得少?
      

  2.   

    packed 应该是压缩类型的保存格式
      

  3.   

    建议你看看变体记录类型数据类型的相关知识.
    variant
      

  4.   

    packed好象是按字节存放,不足的也要占8位。用了packed后在内存中的占用、排列会有一些不同(具体再么存查下资料了,记不太清了)。
        我用过在delphi和VC中定义2个一模一样的记录体,delphi发这个记录体给VC接收,但VC接到的是乱的。如果在delphi定义中加上packed就OK了。
        所以,为了程序的通用和移植性,还是加上Packed吧。