एमएस आईडीएल में पैरामीटर के लिए syntax for specifying a defaultvalue
है। मैं एक समारोह है कि एक VARIANT_BOOL
स्वीकार करता है के लिए एक डिफ़ॉल्ट मान निर्दिष्ट करने की कोशिश की:VARIANT_BOOL के लिए डिफ़ॉल्ट मान निर्दिष्ट कैसे करें?
[id(42)] HRESULT Foo([in, defaultvalue(VARIANT_TRUE)] VARIANT_BOOL bar);
और निम्न त्रुटि संदेश मिल गया:
त्रुटि MIDL2035: निरंतर अभिव्यक्ति की उम्मीद
क्या है यह निर्दिष्ट करने के लिए सही वाक्यविन्यास है कि bar
का डिफ़ॉल्ट मान VARIANT_TRUE
होना चाहिए?
क्या आप जानते थे कि 'TRUE' का उपयोग करके' VARIANT_BOOL' के लिए भी काम करता है? मैं उत्सुक हूं कि ऐसा करने के लिए _official_ तरीका है। – Motti
TRUE का गलत मूल्य है। यह देखते हुए कि mshtml.idl एक कोर माइक्रोसॉफ्ट हेडर फ़ाइल है, मुझे लगता है कि -1 * आधिकारिक * तरीका है। –
'TRUE' में C++ में गलत मान है, आईडीएल में ऐसा लगता है कि इसका सही मान है (मेरा उत्तर देखें)। MSHTML.idl के संबंध में, आपको यह कहां मिला, मेरे पास डीएलएल से उत्पन्न .tlh और .tli है लेकिन मूल नहीं है। Vid – Motti