Vergleich von Delphi und Visual C++ - Inhalt
Vergleich von Delphi und Visual C++ - Inhalt
Vergleich von Delphi und Visual C++ - Inhalt
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Vergleich</strong> <strong>von</strong> <strong>Delphi</strong> <strong>und</strong> <strong>Visual</strong> <strong>C++</strong> - Kapitel 2B<br />
Neben den typisierten Konstanten existieren in beiden Sprachen untypisierte Konstanten. Sie können mitten im Quelltext als feststehende Zeichen <strong>und</strong><br />
Zeichenketten auftreten oder als konstanter Ausdruck explizit definiert worden sein. Sie werden in <strong>C++</strong>, anders als in Pascal, nicht durch das<br />
Schlüsselwort const, sondern durch einen Ausdruck der Art #define Konstante (ohne abschließendes Semikolon) angegeben <strong>und</strong> durch den Präprozessor<br />
vor dem eigentlichen Übersetzungslauf an den entsprechenden Stellen im Quelltext ersetzt.<br />
<strong>C++</strong><br />
Pascal<br />
Numerische<br />
Konstante<br />
im Text<br />
String-<br />
Konstante<br />
im Text<br />
double Betrag;<br />
···<br />
Betrag = 35.20;<br />
// hexadezimal<br />
Betrag = 0x3F20;<br />
printf("Das ist mehr"\<br />
"zeiliger Text\n");<br />
var Betrag: Double;<br />
···<br />
Betrag:= 35.20;<br />
// hexadezimal<br />
Betrag:= $3F20;<br />
writeln('Das ist mehr' +<br />
'zeiliger Text'#13);<br />
durch<br />
explizite<br />
Definition<br />
#define Laenge = 13<br />
···<br />
printf("%d", Laenge);<br />
const Laenge = 13;<br />
···<br />
writeln(Laenge);<br />
String-Konstanten werden auch String-Literale genannt. Im Text auftretende ASCII-Zeichen wie '\0' oder #0 nennt man Zeichen-Literale. Beachtet<br />
werden muß, daß const-Ausdrücke Blockgültigkeit besitzen, während der Gültigkeitsbereich der #define-Anweisung erst durch eine zugehörige<br />
#<strong>und</strong>efine-Anweisung aufgehoben wird.<br />
Konstanten werden <strong>von</strong> den Compilern im Code-Abschnitt des zu erzeugenden Programms eingefügt. Da konstante Ausdrücke schreibgeschützt sind,<br />
kann sich der Codeinhalt zur Laufzeit nicht ändern. Sich selbst modifizierender Code (veränderte Konstanten-Werte) würde die Optimierungsstrategien<br />
moderner Prozessoren, wie die des Pentium Pro <strong>von</strong> Intel, unterlaufen. Die hier angewandten Verfahren der überlappten, parallelen <strong>und</strong><br />
vorausschauenden Befehlsausführung können nur dann beschleunigend wirken, wenn einmal geladener Code nicht verändert wird. <strong>Delphi</strong> gestattet<br />
jedoch aus Gründen der Abwärtskompatibilität, mit der Compiler-Anweisung {$WRITEABLECONST ON} Schreibzugriffe auf typisierte Konstanten<br />
http://ourworld.compuserve.com/homepages/praxisservice/kapit2b.htm (26 of 52) [19.05.2000 15:30:09]