zoukankan      html  css  js  c++  java
  • Item 34. Restricting Heap Allocation

    Item 34. Restricting Heap Allocation

    1、什么情况下要限制堆分配?
    假如一个句柄对象("handle" object )维护了一个体对象("body" object)的引用数量,就需要确保对象的析构函数调用。局部对象和静态对象能够自动调用其析构函数,而堆分配的对象需要显式地调用析构函数。这样确保这个特殊类的对象不能进行堆分配是个不错的注意。

    2、如何限制堆分配?
    class NoHeap {
      public:
        //...
      protected:
        void *operator new( size_t ) { return 0; }
        void operator delete( void * ) {}
      private:
        void *operator new[]( size_t );
        void operator delete[]( void * );
    };

    3、如何限制栈分配?

    class OnHeap {
       ~OnHeap();
      public:
        void destroy()
            { delete this; }
        //...
    };

  • 相关阅读:
    Windows系统的DOS常用命令
    常用pom
    ssm整合
    pom依赖集合
    json
    软件项目管理笔记-软件项目计划
    CSS
    网络配置
    用户组
    用户管理
  • 原文地址:https://www.cnblogs.com/aiwz/p/6333216.html
Copyright © 2011-2022 走看看