SORU
5 Mayıs 2010, ÇARŞAMBA


NSLog metodu objective-C iPhone ile adı

Şu anda, kendimizi genişletilmiş günlük bir mekanizma sınıfın adını ve günlük kaynak satır numarasını yazdırmak için tanımlıyoruz.

#define NCLog(s, ...) NSLog(@"<%@:%d> %@", [[NSString stringWithUTF8String:__FILE__] lastPathComponent], \
    __LINE__, [NSString stringWithFormat:(s), ##__VA_ARGS__])

NCLog aradığımda örneğin, (@"Merhaba Dünya"); Çıkış:

<ApplicationDelegate:10>Hello world

Şimdi ben de yöntem adı gibi çıkmak istiyorum:

<ApplicationDelegate:applicationDidFinishLaunching:10>Hello world

Yani, bu bizim hata ayıklama " denilmesi olduğunu bilmek zaman daha kolay hale yapar. Biz de böyle büyük mükafat hata ayıklayıcı olduğunu biliyorum ama bazen, ben de bir giriş yaparak ayıklama yapmak istiyorum.

CEVAP
5 Mayıs 2010, ÇARŞAMBA


Teknik olarak sorunun cevabı, seni istiyorum:

NSLog(@"<%@:%@:%d>", NSStringFromClass([self class]), NSStringFromSelector(_cmd), __LINE__);

Ya da yapabilirsin:

NSLog(@"%s", __PRETTY_FUNCTION__);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapi

    27 AĞUSTOS 2013
  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • Miles Fisher

    Miles Fisher

    8 NİSAN 2009