2016-04-28 18 views
0

Ist es nicht legal einen Ausdruck wie dies in Pascal zu schreiben:Pascal Exception

b += c; {Take whatever in b and add what in c to it, then assign it back to b} 

oder haben Sie

b := b + c; 

Ich frage mich, ob die oben Art und Weise legal war in Pascal schreiben Object oder Delphi, oder wenn du es in der alten Schule wie unten machen musstest.

+0

Sie können dies in C/C++ tun, aber nicht in Pascal. –

+2

Was passiert, wenn Sie es versuchen? Was sagt Ihnen der Compiler? Es scheint mir, dass Sie das selbst schneller herausgefunden hätten, als Sie 'Frage stellen' klicken und den ersten Satz hier schreiben könnten. Wir sind sehr froh zu helfen, aber Sie sollten jetzt lernen, nicht ohne uns völlig hilflos zu sein. –

+0

Als ich letztes Mal 'b + = c;' in einem Delphi-Programm schrieb, sagte mir der Compiler, dass es nicht gültig sei ... Aber vielleicht kennt es die richtige Pascal-Syntax nicht. –

Antwort

5

Sie haben es auf die alte Weise

b := b + c; 

für Normal Variablen Dies funktioniert immer beide mit tun und Objekte.

oder benutzen:

Inc(b,c); 

jedoch Inc nicht, wenn b Arbeit ist wirklich eine Eigenschaft einiger Datensatz oder Objekt.

Der kostenlose Pascal-Compiler (FPC) erlaubt diese Syntax im Nicht-Delphi-Modus, aber Turbo Pascal und Delphi haben es nie getan.

3

Es gibt keine solche Syntax in Delphi oder Pascal. Sie können Inc, obwohl verwenden:

Inc(b, c); 

Oxygene, das Delphi-like .Net Produkt von RemObjects, ermöglichen die += Syntax für die Anmeldung an Event-Handler, aber das ist nicht zu irgendetwas im Zusammenhang Sie hier tun würden.

0

pascal hat keine Syntax wie diese, wenn Sie Additionsoperation erstellen möchten, können Sie einfach verwenden b: = b + c; oder inc (b, c);

können Sie diese Syntax in c verwenden/C++

0

Sie haben inc (b, c), die ersetzt b: = b + c und Dezember (b, c), die ersetzt b: = b-c.

Wenn Sie diese häufig verwenden, würde ich Ihnen empfehlen, Ihr Modul zu schreiben und diese Prozeduren für Addition, Subtraktion, Multiplikation und Division selbst zu schreiben. Es kann einen Weg geben, Ihre Operatoren zu definieren, wenn Sie dazu bereit sind. Ich bin mir nicht sicher, also würde mir gefallen, wenn mir jemand das erklären könnte.

+0

Ich habe überprüft und Sie können nur Ihre Operatoren nicht definieren. –