ترجمهی شرطی
گاهی کد باید روی ویندوز و لینوکس کمی فرق کند. سلام این تصمیم را در زمان ترجمه میگیرد، پس هیچ هزینهای در زمان اجرا ندارد.
در این درس
اگر در زمان ترجمه
اگر در سطح بالای پرونده، با شرطی که هنگام ترجمه معلوم است، فقط شاخهی درست را در برنامه نگه میدارد:
اگر SALAM_OS_WINDOWS:
پایا جداکننده := "\\"
وگرنه:
پایا جداکننده := "/"
پایان
روال ریشه:
سرچاپ "home" + جداکننده + "salam"
سرچاپ SALAM_OS != ""
پایانخروجیhome/salam
true
پرچمهای آماده
- سیستمعامل:
SALAM_OS_WINDOWS،SALAM_OS_MAC،SALAM_OS_LINUX،SALAM_OS_UNIX،SALAM_OS_ANDROID،SALAM_OS_WASM - پردازنده:
SALAM_ARCH_X64،SALAM_ARCH_ARM64،SALAM_ARCH_WASMو… - نام متنی:
SALAM_OSوSALAM_ARCH، مثلاً"linux"و"arm64"
این نامها در کد معمولی هم مقدارهای ثابتیاند و میشود آنها را چاپ کرد یا در ترابرد به کار برد.