परिचय
#define एक सिम्बल (प्रतीक) परिभाषित करता है जिसका उपयोग #if, #elif में सशर्त कंपाइलेशन के लिए किया जाता है। यह वेरिएबल नहीं है; केवल नाम है।
उदाहरण
#define DEBUG
#undef TRACE
using System;
namespace Demo
{
class Program
{
static void Main(string[] args)
{
#if DEBUG && TRACE
Console.WriteLine("Both defined");
#elif DEBUG && !TRACE
Console.WriteLine("DEBUG defined, TRACE undefined");
#elif !DEBUG && TRACE
Console.WriteLine("DEBUG undefined, TRACE defined");
#else
Console.WriteLine("Both undefined");
#endif
Console.ReadKey();
}
}
}
नियम
#defineफ़ाइल के शीर्ष पर होना चाहिए (using से पहले)।- स्कोप: पूरी स्रोत फ़ाइल।
- कंपाइलर विकल्प
/define:SYMBOLसे भी परिभाषित कर सकते हैं। #defineमान असाइन नहीं करता; केवल अस्तित्व दर्शाता है।
उपयोग केस
- डीबग/ट्रेस कोड सशर्त रूप से शामिल करना।
- प्लेटफॉर्म-विशिष्ट कोड।
- फीचर टॉगल।