2010-11-23 18 views
5

संभव डुप्लिकेट:
Why pure virtual function is initialized by 0?सी ++ में "= 0" का क्या अर्थ है?

हाय सब ..

सबसे पहले, मुझे पता है कि आप सी में इस तरह एक शुद्ध आभासी प्रणाली की घोषणा ++:

virtual void myMethod() = 0; 

.. लेकिन जैसा कि मैं कल रात सो नहीं सका, मेरी नीची हे डी को यह सोचने आया कि "= 0" --part का कोई अर्थपूर्ण अर्थ है, या यदि यह पूरी तरह से वर्चुअल तरीकों की घोषणा करने में सक्षम होने के लिए "बस" है।

क्या कोई अन्य स्थान है जहां इस निर्माण का उपयोग किया जाता है?
(और नहीं - int v = 0; गिनती नहीं है: पी)

+3

डुप्लिकेट [शुद्ध वर्चुअल फ़ंक्शन 0 से प्रारंभ क्यों किया जाता है?] (http://stackoverflow.com/questions/2156634/why-pure- आभासी-समारोह-है-मैं nitialized-by-0) – ypnos

+1

अच्छा लगता है। इसलिए वास्तव में एक बेहतर खोज सुविधा की आवश्यकता है (या मुझे इसका उपयोग करने में बेहतर होना चाहिए :)) – cwap

+0

मुझे यह नहीं मिला होगा अगर यह मेरी स्मृति में पहले से नहीं था। मस्तिष्क कैश अभी तक फ्लश नहीं किया गया था। – ypnos

उत्तर

0

इसका मतलब है कि विधि शुद्ध वर्चुअल है। तो, उपप्रकारों को इसे लागू करना होगा। इसके अलावा, यहां कार्यान्वयन नहीं है और कक्षा तत्काल नहीं है।

3

यह एक आभासी शुद्ध विधि है।

इसका मतलब है कि:

  • हम कार्यान्वयन प्रदान नहीं करते हैं (वहाँ एक प्रदान करने के लिए एक रास्ता है, लेकिन यह उपयोगी नहीं है)
  • हम बच्चे वर्ग इस पद्धति लागू करना चाहते हैं
  • हम इस वर्ग को तत्काल लागू करना असंभव है: केवल एक पूरी तरह से लागू बाल वर्ग
+0

ओपी पहले से ही यह जानता था। – jv42

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