Avatar ·

अनुभवी C++ डेवलपर्स `new` के उपयोग से बचने की सलाह क्यों देते हैं?

नमस्ते! मैं Java से C++ पर स्विच कर रहा हूँ और मुझे एक गलतफहमी हुई है। Java में हम ऑब्जेक्ट बनाने के लिए लगातार `new` का उपयोग करते हैं, यह एक मानक अभ्यास है। लेकिन फ़ोरम और लेख पढ़ते हुए, मैं देखता हूँ कि कई अनुभवी C++ डेवलपर्स '`new` के उपयोग को कम करने' की सलाह देते हैं। सच कहूँ तो, यह अजीब लगता है। यहाँ एक उदाहरण है जो मैंने अपनी Java आदतों का पालन करते हुए लिखा है: ```cpp #include #include class Person { public: Person(const std::string& name) : name_(name) {} void greet() const { std::cout << "Hello, I'm " << name_ << std::endl; } private: std::string name_; }; int main() { Person* p = new Person("Alice"); p->greet(); // delete भूल गया? या कहीं कॉल करना है? Person* p2 = new Person("Bob"); p2->greet(); // और अगर मैं p2 को किसी function में पास करना चाहूँ? // मेमोरी को सही तरीके से कैसे मुक्त करें? return 0; } ``` समस्या यह है कि मैं नहीं समझता कि `new` वास्तव में कब आवश्यक है, और कब इसे स्टैक पर ऑब्जेक्ट बनाकर बदला जा सकता है। आखिरकार