inline CString to_str(PipeDataMetaEn _pipedatameta) { typedef std::pair<PipeDataMetaEn,LPCTSTR> EnumDescr; #define ENUMDESCR(_enumvalue) EnumDescr(_enumvalue,_T(#_enumvalue)) static const EnumDescr descr[] = { ENUMDESCR(PDM_Null) ,ENUMDESCR(PDM_Data) ,ENUMDESCR(PDM_GUIDofData) }; #undef ENUMDESCR long i=0; for(i=0;i<sizea(descr);i++) { if(descr[i].first==_pipedatameta) { return descr[i].second; } } static const LPCTSTR szUnknown = _T("[unknown]"); return szUnknown; }
int main() { int a[9]; int n = sizea(a); return 0; }