คอมไพเลอร์ C# ไม่มีตัวประมวลผลล่วงหน้าแยกต่างหาก อย่างไรก็ตาม คำสั่งจะถูกประมวลผลราวกับว่ามี ใน C# มีการใช้คำสั่งตัวประมวลผลล่วงหน้าเพื่อช่วยในการคอมไพล์ตามเงื่อนไข
คำสั่งตัวประมวลผลล่วงหน้าจะให้คำแนะนำแก่คอมไพเลอร์เพื่อประมวลผลข้อมูลล่วงหน้าก่อนที่จะเริ่มการคอมไพล์จริง
ต่อไปนี้เป็นคำสั่งของตัวประมวลผลล่วงหน้าใน C# -
ซีเนียร์ | คำสั่งและคำอธิบายตัวประมวลผลล่วงหน้า |
---|---|
1 | #define มันกำหนดลำดับของอักขระที่เรียกว่าสัญลักษณ์ |
2 | #undef ช่วยให้คุณกำหนดสัญลักษณ์ได้ |
3 | #if อนุญาตให้ทดสอบสัญลักษณ์หรือสัญลักษณ์เพื่อดูว่าประเมินเป็นจริงหรือไม่ |
4 | #else อนุญาตให้สร้างคำสั่งเงื่อนไขแบบผสมร่วมกับ #if |
5 | #elif อนุญาตให้สร้างคำสั่งเงื่อนไขแบบผสม |
6 | #endif ระบุจุดสิ้นสุดของคำสั่งแบบมีเงื่อนไข |
7 | #line ช่วยให้คุณแก้ไขหมายเลขบรรทัดของคอมไพเลอร์และ (ทางเลือก) เอาต์พุตชื่อไฟล์สำหรับข้อผิดพลาดและคำเตือน |
8 | #error อนุญาตให้สร้างข้อผิดพลาดจากตำแหน่งเฉพาะในรหัสของคุณ |
9 | #คำเตือน อนุญาตให้สร้างคำเตือนระดับหนึ่งจากตำแหน่งเฉพาะในรหัสของคุณ |
10 | #ภูมิภาค ช่วยให้คุณสามารถระบุกลุ่มโค้ดที่คุณสามารถขยายหรือยุบได้เมื่อใช้คุณลักษณะการสรุปของ Visual Studio Code Editor |
11 | #endregion นับเป็นจุดสิ้นสุดของบล็อก #region |
ให้เราดูตัวอย่างเพื่อเรียนรู้เกี่ยวกับการใช้คำสั่งพรีโปรเซสเซอร์ใน C# -
ตัวอย่าง
#define PI using System; namespace Demo { class Program { static void Main(string[] args) { #if (PI) Console.WriteLine("PI is defined"); #else Console.WriteLine("PI is not defined"); #endif Console.ReadKey(); } } }