不能使用 break 语句。非法表达错误
Can't use break statement. Illegal expression error
在我的 for 循环中,我使用 break 语句在一些匹配后中断循环。但是当我编译我的代码时,我遇到了中断错误:
Error: Illegal expression
你能帮帮我吗?我应该添加一些单位?
for i:=0 to length(carsList)-1 do
begin
if numer <> carsList[i].numer then
begin
tmpKw2 := carsList[i].rectangleRotate(carsList[i].angle);
if((polyLine(tmpKw2,linia.p1.x,linia.p1.y,linia.p2.x,linia.p2.y))) then
begin
kolizja := true;
break:=true;
maxV := carsList[i].v;
Break;
end;
end;
end;
下面的代码对我有用:
program Testbreak;
procedure TestBreakInFor;
var
i : Integer;
begin
for i := 0 to 10 do begin
if Odd(i) then
Break;
end;
end;
begin
TestBreakInFor;
readln;
end.
您收到“非法表达式”错误的原因是您试图将 Break
当作一个变量 (Break := True
) 使用,但实际上它不是,它是一个执行流控制指令,如 Continue
。省略 := True
它应该可以正确编译。
在我的 for 循环中,我使用 break 语句在一些匹配后中断循环。但是当我编译我的代码时,我遇到了中断错误:
Error: Illegal expression
你能帮帮我吗?我应该添加一些单位?
for i:=0 to length(carsList)-1 do
begin
if numer <> carsList[i].numer then
begin
tmpKw2 := carsList[i].rectangleRotate(carsList[i].angle);
if((polyLine(tmpKw2,linia.p1.x,linia.p1.y,linia.p2.x,linia.p2.y))) then
begin
kolizja := true;
break:=true;
maxV := carsList[i].v;
Break;
end;
end;
end;
下面的代码对我有用:
program Testbreak;
procedure TestBreakInFor;
var
i : Integer;
begin
for i := 0 to 10 do begin
if Odd(i) then
Break;
end;
end;
begin
TestBreakInFor;
readln;
end.
您收到“非法表达式”错误的原因是您试图将 Break
当作一个变量 (Break := True
) 使用,但实际上它不是,它是一个执行流控制指令,如 Continue
。省略 := True
它应该可以正确编译。