Leitfaden zur bedingten Kompilierung

Bedingte Compiler-Konstanten gelten stets nur für die Datei, in der sie vorkommen. Es ist nicht möglich, öffentliche Compiler-Konstanten über die #Const-Anweisung zu deklarieren.

In VB.NET sind die bedingten Compiler-Konstanten und Literale die einzigen Werttypen, die zugewiesen werden können. C# verwendet dagegen nur Boolesche Werte – eine Konstante erfüllt die Bedingung true, wenn sie definiert ist. Mit den Keywords #Const und #define definierte Konstanten können nur zur bedingten Kompilierung eingesetzt werden; sie können nicht an anderen Stellen des Codes verwendet werden.

Eine interessante Ausnahme ist der Umstand, dass die Konstanten undefiniert sein können, wenn sie nicht vor dem Verweis auf sie in Form einer if-Aussage ausdrücklich deklariert wurden. In diesem Fall wird in VB.NET ein Wert Nothing beziehungsweise in C# ein Wert null zugewiesen. Listing B enthält ein einfaches Beispiel hierfür.

Listing B

Listing C enthält den entsprechenden Code in C# (Achtung: hier wird ein Boolescher Wert anstelle der Ganzzahl verwendet).

Listing C

Diese Beispielanwendungen liefern das folgende Ergebnis:

Eingegebene Werte: x = 12, y = 10
Berechneter Wert = 66

Ausgabewert: 66

Setzt man die Konstanten im VB.NET-Beispiel auf einen von Null abweichenden Wert beziehungsweise im C#-Code auf false zurück, ergibt dies:

Ausgabewert: 66

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Hacker missbrauchen Google Calendar zum Angriff auf Postfächer

Security-Experten von Check Point sind einer neuen Angriffsart auf die Spur gekommen, die E-Mail-Schutzmaßnahmen umgehen…

2 Wochen ago

Bedrohungen in Europa: Schwachstellen in der Lieferkette dominieren

Hinter 84 Prozent der Zwischenfälle bei Herstellern stecken Schwachstellen in der Lieferkette. Auf dem Vormarsch…

2 Wochen ago

Bericht: Apple arbeitet an faltbarem iPad

Es kommt angeblich 2028 auf den Markt. Das aufgeklappte Gerät soll die Displayfläche von zwei…

2 Wochen ago

HPE baut Supercomputer am Leibniz-Rechenzentrum

Das System basiert auf Hardware von HPE-Cray und Nvidia. Die Inbetriebnahme erfolgt 2027.

2 Wochen ago

Bund meldet Fortschritte in der Netzversorgung

Die Bundesnetzagentur hat ihr Gigabit-Grundbuch aktualisiert. Drei von vier Haushalten sollen jetzt Zugang zu Breitbandanschlüssen…

2 Wochen ago

Vorinstallierte Schadsoftware auf IoT-Geräten

Mit dem Internet verbundene Digitale Bilderrahmen oder Mediaplayer können mit Schadsoftware infiziert werden und sind…

2 Wochen ago