Avatar ·

C++ में वर्चुअल फंक्शन्स की आवश्यकता क्यों है? उदाहरण सहित समझाएं

नमस्ते साथियों! मैंने अभी C++ सीखना शुरू किया है और वर्चुअल फंक्शन्स का अर्थ समझ नहीं पा रहा हूँ। मैंने कई लेख पढ़े, लेकिन फिर भी मेरे दिमाग में गड़बड़ है। उदाहरण के लिए, मेरे पास एक बेस क्लास Animal और दो डिराइव्ड क्लासेस Dog और Cat हैं। मैं चाहता हूँ कि हर जानवर की अपनी आवाज़ हो। यहाँ मैंने वर्चुअल फंक्शन्स के बिना ऐसा किया: ```cpp #include #include class Animal { public: void speak() { std::cout << "Some generic animal sound\n"; } }; class Dog : public Animal { public: void speak() { std::cout << "Woof!\n"; } }; class Cat : public Animal { public: void speak() { std::cout << "Meow!\n"; } }; int main() { std::vector zoo; zoo.push_back(new Dog()); zoo.push_back(new Cat()); for (auto animal : zoo) { animal->speak(); // हमेशा "Some generic animal sound" प्रिंट करता है } // मेमोरी क्लियर करना... return 0; } ``` मुझे उम्मीद थी कि हर विशिष्ट जानवर के लिए speak() कॉल होगा, लेकिन