2011-01-13 15 views
30

ref class पर किसी भी अच्छी साइट या स्पष्टीकरण और कक्षा को "रेफ क्लास" घोषित करने के लिए कब?प्रबंधित सी ++ रेफ क्लास

MSDN पर स्पष्टीकरण

base_type (वैकल्पिक) मेरे लिए पर्याप्त नहीं था,

एक आधार प्रकार। एक रेफरी क्लास या रेफ स्ट्रक्चर शून्य या अधिक प्रबंधित इंटरफेस और शून्य या एक रेफ प्रकार से प्राप्त हो सकता है। एक मूल्य वर्ग या मूल्य संरचना केवल शून्य या अधिक प्रबंधित इंटरफेस से प्राप्त हो सकती है।

रेफरी

ref कीवर्ड संकलक कि वर्ग या संरचना ढेर और एक संदर्भ पर आवंटित किया जाएगा यह कार्यों के लिए पारित हो जाएगा करने के लिए या वर्ग के सदस्यों में संग्रहीत बताता है। value कीवर्ड संकलक को बताता है कि कक्षा या संरचना में मौजूद सभी डेटा कार्यों में या सदस्यों में संग्रहीत किया जाता है।

उत्तर

47

असल में, ref class एक सीएलआर कक्षा है। यह सी # में class के बराबर है।

यह सीएलआर द्वारा प्रबंधित संदर्भ प्रकार बनाता है। यदि आप कक्षा बनाना चाहते हैं जो सी # से प्रयोग योग्य है, तो आप आमतौर पर ref class बनाते हैं। इसके अलावा, सिर्फ संदर्भ के लिए (ref struct, वैसे, बिल्कुल वही बात करता है, लेकिन सी ++ के मानक वर्ग बनाम struct में डिफ़ॉल्ट पहुंच नियमों के साथ।)

- (सी # में struct) आदेश एक मान प्रकार बनाने के लिए, आप value class या value struct का उपयोग करें।

इन नए कीवर्ड में से कई का एक अच्छा स्पष्टीकरण Herb Sutter's post on C++/CLI Keywords है। यदि आप सी ++/सीएलआई के लिए नए हैं, तो यह एक उपयोगी संदर्भ है, लेकिन एक ठोस सी ++ पृष्ठभूमि है।

+0

मूल अवधारणा को अच्छी तरह से समझाया। धन्यवाद! यह वही है जो मैं देख रहा था :) –

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