ในObjective-C
บางครั้งการใช้ค่าคงที่สตริงคงที่เพื่อกำหนดคีย์ API ทางเลือก (ตัวอย่างเช่นเพื่อแยกความแตกต่างระหว่างคีย์ RELEASE และ DEBUG สำหรับแพ็คเกจการวิเคราะห์เช่น MixPanel, Flurry หรือ Crashlytics):
#if DEBUG
static NSString *const API_KEY = @"KEY_A";
#else
static NSString *const API_KEY = @"KEY_B";
#endif
แล้ว ...
[Analytics startSession:API_KEY];
สิ่งนี้แปลเป็น Swift อย่างไรเนื่องจากคอมไพเลอร์ Swift ไม่ใช้ตัวประมวลผลล่วงหน้าอีกต่อไป