Gibt es #define oder #ifndef in CSharp

07/08/2008 - 09:48 von Michael Burkhardt | Report spam
Hallo, ich komme aus der C++ Welt und finde in C# leider keine Pre-Compiled
derektive wie #define.
Denn man konnte Code für debug versionen und Release Versionen
unterschiedlich halten in dem man nach bestimmten define's gefragt hat.
Gibt es etwas vergleichbares ist C#?

Gruß Michael
 

Lesen sie die antworten

#1 Frank Dzaebel
07/08/2008 - 10:37 | Warnen spam
Hallo Michael,

Hallo, ich komme aus der C++ Welt und finde in C# leider
keine Pre-Compiled derektive wie #define.



Es gibt in C# auch ein #define.
Das ist aber kein Makro in dem Sinne von C++.
Hier geht das dann z.B. so:

#define DEBUG

[#define (C#-Referenz)]
http://msdn.microsoft.com/de-de/lib...yck0x.aspx

Dennoch, Du meinst ja noch etwas anderes ...



_____________________
Denn man konnte Code für debug versionen und Release Versionen
unterschiedlich halten in dem man nach bestimmten define's gefragt hat.
Gibt es etwas vergleichbares ist C#?



Ja, das geht. Zum Beispiel kannst Du in den Projekt-
Eigenschaften der Debug-Konfiguration bei den
Symbolen für bedingte Kompilierung (unter Registerkarte
"Erstellen") z.B. einfach Debug festlegen:

[Bedingte Kompilierung mit ''Trace'' und ''Debug'']
http://msdn.microsoft.com/de-de/library/aa983575(VS.71).aspx

und dann z.B. mit:

#if (Debug)
MessageBox.Show("Debugging");
#else
MessageBox.Show("Kein Debugging");
#endif

codierst.


_____________
Oder imperativ (falls nötig) mit:

[Debugger.IsAttached-Eigenschaft (System.Diagnostics)]
http://msdn.microsoft.com/de-de/lib...ached.aspx


______________
Oder pro Quelldatei definieren, indem
Du es einfach an den Anfang der cs-Datei schreibst.

[#if (C#-Referenz)]
http://msdn.microsoft.com/de-de/lib...tbswk.aspx

und und ...
http://www.google.de/search?hl=de&a...ieren+C%23


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen