Symboles de compilation conditionnelle
Apparence
Liens
Utilisation dans le code
// les #define doivent être les premières instructions du fichier avant les using et namespace
#define MYTEST
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
#if (DEBUG && !MYTEST)
Console.WriteLine("DEBUG is defined");
#elif (!DEBUG && MYTEST)
Console.WriteLine("MYTEST is defined");
#elif (DEBUG && MYTEST)
Console.WriteLine("DEBUG and MYTEST are defined");
#else
Console.WriteLine("DEBUG and MYTEST are not defined");
#endif
}
}
}
|
Activation d'un symbole
- Propriétés du projet → Générer → Symboles de compilation conditionnelle
Attribut de méthode Conditional
Conditional est un attribut de méthode qui indique au compilateur d'ignorer les appels à celle-ci si un certain identificateur de prétraitement n'est pas définit. Néanmoins le code de la méthode sera toujours compilé en MSIL.
RELEASE n'existe pas, il faut utiliser !DEBUG.
// Les appels à la méthode Message seront ignoré
// si la compilation n'a pas été réalisée dans le mode DEBUG.
[Conditional("DEBUG")]
static void Message(string message)
{
// Le code suivant ne sera pas compilés si la compilation n'a pas été réalisée
// dans le mode DEBUG.
#if DEBUG
Console.WriteLine(message);
#endif
}
|