मुझे लगता है कि आपका कोड इस प्रकार है:
void DoSomethingIfCompFlag() {
#if COMPILER_FLAG
//your code
#endif
}
यह अनुकूलित नहीं होगा, हालांकि:
partial void DoSomethingIfCompFlag();
#if COMPILER_FLAG
partial void DoSomethingIfCompFlag() {
//your code
}
#endif
पहली खाली विधि आंशिक है, और सी # 3 कंपाइलर इसे अनुकूलित करेगा।
वैसे: यह मूल रूप से आंशिक तरीकों के लिए है। माइक्रोसॉफ्ट ने अपने लिनक्स डिजाइनरों को कोड जेनरेटर जोड़े जिन्हें उन तरीकों को कॉल करने की आवश्यकता है जो डिफ़ॉल्ट रूप से कुछ भी नहीं करते हैं।
विधि को अधिभारित करने के लिए मजबूर करने के बजाय आप आंशिक उपयोग कर सकते हैं।
अतिरिक्त खाली विधि कॉल के ऊपरी हिस्से को जोड़ने के बजाय, अगर आंशिक रूप से उपयोग नहीं किया जाता है और कोई प्रदर्शन खो जाता है तो आंशिक रूप से ऑप्टिमाइज़ किया जाता है।