如何在 C++ 中限制对象的动态分配?


在本教程中,我们将讨论一个程序,以了解如何在 C++ 中限制对象的动态分配。

为此,我们将保留新的操作函数私有,以便无法使用它动态创建对象。

示例

 实时演示

#include <iostream>
using namespace std;
class Test{
   //making new operator private
   void* operator new(size_t size);
   int x;
   public:
   Test() { x = 9; cout << "Constructor is called\n"; }
   void display() { cout << "x = " << x << "\n"; }
   ~Test() { cout << "Destructor is executed\n"; }
};
int main(){
   Test t;
   t.display();
   return 0;
}

输出

Constructor is called
x = 9
Destructor is executed

更新于:02-Mar-2020

189 次浏览

开启你的职业生涯

完成课程,获得认证

开始学习
广告