Preprocessor directives in C#
问题 In C#, if preprocessor directives are instructions pre-processed before actual compilation then why is it not executed first in this program? static void Main(string[] args) { Program1.display(); Program2 p2 = new Program2(); p2.show(); #if DEBUG Console.WriteLine("DEBUG from preprocessor directive is working!"); #endif } Expected Output: DEBUG from preprocessor directive is working! .......(from display()) .......(from show()) But Actual Output: .......(from display()) .......(from show())