2012-08-09 16 views
9

Olası Çoğalt:
How to create constant NSString by concatenating strings in Obj-C?Concatenate sabitleri Objective-C ios

Ben bitiştirmek etmek istediğim iki sabitleri vardır: Normalde diğer dillerde

NSString * const WEBSITE_URL = @"http://192.168.1.15:3000/"; 
NSString * const API_URL = @"http://192.168.1.15:3000/api/"; 

Ben API_URL içinde WEBSITE_URL ile birleştirme yapar, ancak bir derleme zamanı sabiti olan sinc'i bir araya getiremezsiniz stringWithFormat veya bunun gibi bir şey, bir çalışma zamanı, derleme zamanı yöntemidir.

+2

Ne demek istediğinden emin değilim, derleme zamanında bunları birleştirmek ister misiniz? Öyleyse neden? :) –

+0

Kök URL değiştiğinde, yalnızca bir satırda tek bir yerde güncellenmesi gerekir. –

cevap

19

makro kullanımı ile yapabilirsiniz:

#define WEBSITE_URL @"http://192.168.1.15:3000/" 
#define API_URL WEBSITE_URL @"api/" 
9

Sen önişlemcisine düşebilir.

#define WEBSITE_URL_DEF "http://192.168.1.15:3000/" 

NSString * const WEBSITE_URL = @WEBSITE_URL_DEF; 
NSString * const API_URL  = @WEBSITE_URL_DEF "api/";