2009-06-05 13 views
11

में इंटरफेस को कैसे परिभाषित करूं? क्या हम विजुअल स्टूडियो का उपयोग कर सी ++ में इंटरफेस को परिभाषित कर सकते हैं?मैं प्रबंधित सी ++/सीएलआई

यदि हां, तो सी ++ में इंटरफेस को परिभाषित करने का एक उदाहरण क्या होगा?

+0

कृपया परिभाषित करें कि आपका क्या मतलब है –

+0

क्या आप प्रबंधित कोड में कार्यान्वित इंटरफेस बनाना चाहते हैं? या इंटरफेस का उपयोग विशेष रूप से सी ++ द्वारा किया जाएगा? –

उत्तर

0

सी ++ में प्रति "इंटरफ़ेस" की अवधारणा नहीं है। वे आमतौर पर शुद्ध आभासी कार्यों के साथ अमूर्त कक्षाओं के साथ नकल कर रहे हैं। इसके अलावा, class es आमतौर पर struct एस के साथ प्रतिस्थापित किए जाते हैं, क्योंकि उन लोगों के लिए डिफ़ॉल्ट एक्सेस संशोधक public है। इसलिए,

struct IFoo 
{ 
    virtual void Bar() = 0; 
} 

इसके अलावा, this देखें।

+3

ऑब्जेक्ट के विनाश पर आपके द्वारा उत्पन्न स्मृति रिसाव के बारे में क्या है! बेस क्लास में एक सार्वजनिक वर्चुअल विनाशक या संरक्षित गैर-वर्चुअल विनाशक होना चाहिए। – TimW

+1

@ एंटन गोगोलेव यदि आपके पास आभासी यादगार हैं तो आपके पास वर्चुअल विनाशक होना चाहिए – vidstige

16

प्रबंधित सी ++ में, यह एक प्रबंधित इंटरफेस के लिए वाक्यविन्यास है।

using namespace System; 

interface class IFoo 
{ 
    String^ GetName(); 
}; 
+1

यह ध्यान देने योग्य है कि किसी संपत्ति के लिए वाक्यविन्यास है: 'संपत्ति स्ट्रिंग^नाम;' – Josh

संबंधित मुद्दे