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

  • OVERWERK

    OVERWERK

    6 Temmuz 2010
  • Study with Substance P

    Study with S

    31 Mayıs 2008
  • wwjoshdew

    wwjoshdew

    1 AĞUSTOS 2007