SORU
18 EYLÜL 2008, PERŞEMBE


C makroları yararlıdır?

C ön işlemci haklı olarak korkulur ve C toplum tarafından dışlanmış. Kaplanmış fonksiyonları, consts ve şablonlar genellikle #define güvenli ve üstün bir alternatiftir.

Aşağıdaki makro:

#define SUCCEEDED(hr) ((HRESULT)(hr) >= 0)

bu tür güvenli şekilde üstün

inline bool succeeded(int hr) { return hr >= 0; }

Ama makroları listesini lütfen makrolar bulmak için kullandığı bir yere sahipolamazbu kadar basit olmasa ne.

Lütfen durumlarda kullanmak kadar oy olabilir ve eğer bu soruya nasıl cevap yorumları dışarı preprosessor noktası olmayan yanıtlar elde etmek için nasıl biliyorsanız ayrı bir cevap koymak.

CEVAP
18 EYLÜL 2008, PERŞEMBE


Hata ayıklama fonksiyonları için sarma, otomatik olarak __FILE__, __LINE__, vb: gibi şeyler geçmek

#ifdef ( DEBUG )
#define M_DebugLog( msg )  std::cout << __FILE__ << ":" << __LINE__ << ": " << msg
#else
#define M_DebugLog( msg )
#endif

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bryan Smith

    Bryan Smith

    12 Mart 2006
  • CommonArtisan

    CommonArtisa

    7 Temmuz 2012
  • William Hyde

    William Hyde

    23 HAZİRAN 2008