C++ में malloc का उपयोग कब करें और new का कब करें?
नमस्ते सहकर्मियों! मैं C++ सीख रहा हूँ और मेमोरी प्रबंधन तक पहुँच गया हूँ। मैंने समझ लिया है कि malloc C का function है और new C++ का operator है। लेकिन व्यवहार में मुझे भ्रम हो गया है।
मान लीजिए, मैं `Person` class के object के लिए मेमोरी आवंटित करना चाहता हूँ। यहाँ दो तरीके हैं जो मैं समझता हूँ:
```cpp
#include // malloc के लिए
#include
class Person {
public:
Person(const std::string& name) : name_(name) {
std::cout << "Person created: " << name_ << std::endl;
}
~Person() {
std::cout << "Person destroyed: " << name_ << std::endl;
}
void greet() { std::cout << "Hi, I'm " << name_ << std::endl; }
private:
std::string name_;
};
// तरीका 1: malloc
Person* p1 = (Person*)malloc(sizeof(Person));
// तरीका 2: new
Person* p2 =