c++ - How to check if an object construction is complete? -


कुछ पूर्णांक और एक सूचक के साथ एक वर्ग है,

  class A {int a ; Int b; चार * एस; सार्वजनिक: ... वर्ग रचना A {A & amp; a; सार्वजनिक: निर्माण ए (ए और टा): ए (टा) {} ...}; };  

जैसा कि देखा गया कंसट्रैक ऑब्जेक्ट ए के निर्माण के लिए उत्तरदायी है। मैं यह देखने के लिए एक विधि लिखना चाहता हूं कि क्या ConstructA वस्तु का निर्माण करने में सफल रहा है। आप इसके बारे में कैसे जा सकते हैं?

कंसट्रक्टर को सी ++ में विफल होने का कोई रास्ता नहीं है, इसलिए या तो ऑब्जेक्ट:

  • मौजूद नहीं है
  • सफलतापूर्वक निर्माण किया गया है।

यदि कोई कन्स्ट्रक्टर अपवाद फेंकता है, तो ऑब्जेक्ट प्रभावी ढंग से नहीं करता है इस बिंदु पर अपवाद पकड़ा गया है।

आप एक अतिरिक्त विधि को कार्यान्वित करना चाह सकते हैं जैसे कि isOK () वह वस्तु देता है कि वस्तु की आंतरिक स्थिति कुछ उपयोगी है । उदाहरण के लिए, यदि आपके पास कोई ऑब्जेक्ट है जो एक फ़ाइल का प्रतिनिधित्व करता है, तो आप यह संकेत कर सकते हैं कि फ़ाइल सफलतापूर्वक खोला जा सकता है। हालांकि, जहां तक ​​सी ++ का संबंध है, फ़ाइल ऑब्जेक्ट पूरी तरह से तैयार हो जाएगा चाहे फाइल खोली जा सकती है या नहीं।

यह कहने के बाद, मुझे पूरा यकीन नहीं है कि की भूमिका क्या है ConstructA वर्ग आपके उदाहरण में है।


Comments