Conditional Compilation
เทคนิคนี้จะใช้เงื่อนไขเหมือน if-else ที่เราเขียนโปรแกรมกันมาใช้งานครับ แล้วมันแตกต่างกับเงื่อนไขปกติที่เราใช้กันยังไงมาดูกันครับ
โดยปกติเทคนิคแบบนี้เราจะเจอภายใน header file หรือ library เป็นหลักครับ โดยมักจะใช้เพื่อเลือกเงื่อนไขก่อนการทำการคอมไพล์ ดังนั้นเงื่อนไขในการใช้เทคนิคการ Preprocessing ที่เป็นเงื่อนไขนั้นจะใช้เลือก สถาปัตยกรรม ฟังก์ชันหรือตัว source code ที่จะนำไป compile โดยตัวเงื่อนไขลักษณะนี้จะประกอบไปด้วย
#Ifdef <-- ถ้า เปิดเงื่อนไขถ้าเป็น 1 จะทำงานในเงื่อนไขนี้
#ifndef <-- ถ้า-ไม่ ถ้าเงื่อนไขไม่เป็น 1 เป็น 0 จะทำงานในเงื่อนไขนี้
#elif <-- เงื่อนไขอื่นอันนี้ก็ทำงานในกรณีเป็น 1
#else <-- ถ้าไม่มีเงื่อนไขอื่นๆแล้วจะทำในส่วนนี้
#endif <-- ใช้ปิดเงื่อนไข
Example
จากโค้ดด้านบนและรูปจะเห็นการทำงานจะเป็นการเลือก platform บนบอร์ดที่จะใช้งานเพื่อให้สามารถเลือกการโปรแกรมคอมไพล์บนโค้ดชุดเดียวกันแต่แตกต่างกันเพียง library ได้โดยไม่ต้องสร้างโค้ดอีกชุด
Last updated