MyRecord = record
I:Integer;
S:String;
case tag:Integer of
0:(DI:String);
1:(D2:Integer);
end;像上面的代码:
如果 tag 的值为 0 ,则声明 D1:String;
如果 tag 的值为 1 ,则声明 D2:Integer;
是吗?如果是的话,那又有什么实际的用处呢?
I:Integer;
S:String;
case tag:Integer of
0:(DI:String);
1:(D2:Integer);
end;像上面的代码:
如果 tag 的值为 0 ,则声明 D1:String;
如果 tag 的值为 1 ,则声明 D2:Integer;
是吗?如果是的话,那又有什么实际的用处呢?
但因为数据类型的容量不同, 它们的值有可能是不一样的。
所以上述你的理解错了
要注意的是他们的储存空间是一样的,是依最大那个类型开劈储存空间