关于begin的疑问? (文华财经WH8赢智V8.2)

投资者咨询:关于begin的疑问? (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-8-15 10:46
下面的例子是高级教程中的例子,为什么第三行中的if then后面没有begin呢?begin到底在什么情况下才能用?

IF ISUP THEN

BEGIN

  IF REF(ISUP,1) THEN

  A..2;

  ELSE

  A..1;

  END

ELSE

BEGIN

  IF REF(ISUP,1) THEN

  A..-1;

  ELSE

  A..-2;

END

技术人员回复
日期:2018-8-15 11:02
BEGIN...END可以简单看做是“括号”的作用

例:

IF ISUP THEN
BEGIN
  IF REF(ISUP,1) THEN
     A..2;
  ELSE
     A..1;
END//在ISUP的条件下,定义了多条语句,那么需要BEGIN...end将其括起来,表示都在ISUP条件之下

ELSE

BEGIN
  IF REF(ISUP,1) THEN
     A..-1;//在REF(ISUP,1) 条件下,只有一条语句,所以不需要加BEGIN...end了,加上也可以见附2
  ELSE
     A..-2;
END


附1:如果定义多条语句,但是没有加BEGIN...END,那么就默认只有后面最近的一个语句在条件之下,其他不在

附2:

IF REF(ISUP,1) THEN
BEGIN
     A..-1;
END