मैक्रो तर्क में कोई अल्पविराम की अनुमति नहीं है क्योंकि इसे एक से अधिक तर्कों के रूप में माना जाएगा और प्रीप्रोकैसिंग गलत होगा। हालांकि, हम प्रीप्रोसेसर को एक तर्क के रूप में पेश करने के लिए तर्क को संश्लेषित कर सकते हैं। क्या कोई मैक्रो या अन्य तकनीकें हैं जो संलग्न कोष्ठक को हटा सकती हैं?मैक्रो के साथ संलग्न कोष्ठक को कैसे हटाएं?
उदाहरण के लिए, अगर मैं की तरह
#define MY_MACRO(a, b) ...
मैक्रो निर्धारित और तरह
MY_MACRO(A<int, double>, text);
इसका इस्तेमाल गलत हो जाएगा। जैसे
MY_MACRO((A<int, double>), text)
इसका इस्तेमाल किसी मैक्रो या तकनीक के साथ कोष्ठक दूर करने के लिए ठीक हो जाएगा। बूस्ट केवल प्रकार के लिए BOOST_IDENTITY_TYPE
मैक्रो नहीं बल्कि सामान्य मामलों
चारों ओर एक काम - 'typedef ए आईए; MY_MACRO (आईए, टेक्स्ट); ' –
टाइपेडफ सभी प्रीप्रोसेसर हैक्स IMHO –