一个简单的加法问题???

jacky_shen 2003-04-29 12:12:28
var
B: Byte;
begin
B := High(Byte) + 1; <---编译不通过
end;

var
B: Byte;
begin
B := High(Byte);
B := B + 1; <----编译通过
end;

请教这是怎么会事???

...全文
53 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhaibin 2003-04-29
  • 打赏
  • 举报
回复
B := High(Byte) + 1;
在编译时,就可以算出B的值;

而B := B + 1;
在编译时,无法算出B的值,只有在运行的时候才知道;
虽然前面有语句:B := High(Byte);
但编译器不可能这么智能的

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧