Type
    Rec = Record
     D:String;
     I:Integer;
    Case Integer of
     0:(M:Char);
     1:(N:Char);
  end;

解决方案 »

  1.   

    可变的记录,与C的联合差不多。
    M和N占用相同的内存区域。例如,老师和学生的资料一起放在一个数组里,
    老师有属性(姓名,性别,职称)
    学生有属性(姓名,性别,年级),
    姓名,性别是他们共有的,而老师有职称学生没有,
    学生有年级而老师没有,
    那么我们就把(职称和年级放在一个区域里)。这种记录的可变部分不是生存期自管理类型,小心。
      

  2.   

    它为什么不这样做呢?
    Type
        Rec = Record
         D:String;
         I:Integer;
     //   Case Integer of
         M:Char;
         N:Char;
      end;
    是为了节约内存空间?
      

  3.   

    希望能够解释一下这些语句:
        Case Integer of
         0:(M:Char);
         1:(N:Char);如果....就....
      

  4.   

    如果Integer的值為:
     0時:定義字符型變量M。
     1時:定義字符型變量N。
      

  5.   

    Integer 是指什么变量 是I?
      

  6.   

    是的!不過要注意I或者不管是其它的什麼,一定要在Case語句引用它之前定義。
    順便告訴你,這樣的結構現在已經沒什麼實際用途了,知道就好,別為它浪費時間。