3
 static void Job(Args _args) 
 { 
    int number=10;
    do
     {
        print (strfmt("current number = %1", number));
        number --;
     }while (number != 0)  
  }

这是一项仅用于在 X++ 中测试 do-while 的工作,并且在最后一个 '}' 中出现“语法错误”

我是 Dynamics AX 和 X++ 的新手,所以我不知道我是否缺少某些东西,但我会说它应该可以工作。

-----[编辑]-----
问题的第二部分已移至单独的问题

4

1 回答 1

5

与许多 C 风格语言一样,DO WHILE 循环确实需要在 while 测试结束时使用分号:

http://msdn.microsoft.com/en-us/library/aa842320.aspx

句法


{ 语句 }

( 表达式 ) ;

固定代码:

static void Job(Args _args) 
{ 
  int number=10;
  do
   {
      print (strfmt("current number = %1", number));
      number --;
   }while (number != 0); <-- semicolon required here
}

直到最后一个大括号才发生错误的原因是编译器直到代码中的那个点才意识到缺少某些东西。

于 2010-01-04T17:24:30.350 回答