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

Ceci est un emploi juste pour le test do-while dans X ++, et je reçois une « erreur de syntaxe » dans le dernier « } »Erreur de syntaxe à Ax

Je suis nouveau à Dynamics AX et X ++, donc je ne sais pas s'il y a quelque chose qui me manque, mais je dirais que ça devrait marcher.

----- [EDIT] -----
deuxième partie de la question a été déplacée à un separate question

Répondre

5

Comme dans de nombreuses langues de style C, la DO WHILE ne nécessite un point-virgule à la fin du test while:

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

SYNTAX

faire
{instruction}
tandis que
(expression) ;

Code fixe:

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

La raison de l'erreur ne se produit pas avant l'accolade finale est que le compilateur ne se rend pas compte il y a quelque chose qui manque jusqu'à ce moment-là dans le code.

+0

merci! +1, maintenant, comment suis-je supposé remarquer d'autres erreurs dans des énoncés plus complexes plus loin? des astuces à ajouter? – Marcelo

+0

http://stackoverflow.com/search?q=general+code+debuggin+techniques pour un. –

+0

La deuxième partie de votre question est préférable de gauche comme une question distincte, alors j'en ai créé un ici: http://stackoverflow.com/questions/2001069/understanding-compiler-error-messages –