Ax中的语法错误

Mar*_*elo 3 debugging x++ axapta dynamics-ax-2009 visual-studio

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

这是一个仅用于在X ++中测试do-while的工作,我在最后的'}'中得到了"语法错误"

我是Dynamics AX和X ++的新手,所以我不知道是否有我遗漏的东西,但我认为它应该有效.

----- [编辑] -----问题的
第二部分被移到另一个问题

Ada*_*vis 5

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

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

句法

do
{statement}
while
(expression);

固定代码:

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

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