
delphi的record中 case 的问题
这样一段代码TMessage=packedrecordMsg:Cardinal;caseIntegerof0:(WParam:Longint;LParam:Longint...
这样一段代码
TMessage = packed record
Msg: Cardinal;
case Integer of
0: (
WParam: Longint;
LParam: Longint;
Result: Longint);
1: (
WParamLo: Word;
WParamHi: Word;
LParamLo: Word;
LParamHi: Word;
ResultLo: Word;
ResultHi: Word);
end;
该情况语句case中的0和1 是靠什么来判定的 展开
TMessage = packed record
Msg: Cardinal;
case Integer of
0: (
WParam: Longint;
LParam: Longint;
Result: Longint);
1: (
WParamLo: Word;
WParamHi: Word;
LParamLo: Word;
LParamHi: Word;
ResultLo: Word;
ResultHi: Word);
end;
该情况语句case中的0和1 是靠什么来判定的 展开
1个回答
展开全部
声明
TRect = record
case Integer of
0: (Left, Top, Right, Bottom: Integer);
1: (TopLeft, BottomRight: TPoint);
end;
中,Integer是数据类型,0和1是它的两个值,这个声明的意思是说内存中有一块区域存放了四个整型值,你可以用TRect.Left,TRect.Top...来访问,也可以用TRect.TopLeft来访问。用不到0和1这两个值的,他们仅仅为可读性而存在。
TRect = record
case Integer of
0: (Left, Top, Right, Bottom: Integer);
1: (TopLeft, BottomRight: TPoint);
end;
中,Integer是数据类型,0和1是它的两个值,这个声明的意思是说内存中有一块区域存放了四个整型值,你可以用TRect.Left,TRect.Top...来访问,也可以用TRect.TopLeft来访问。用不到0和1这两个值的,他们仅仅为可读性而存在。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询