aligningheapmanager.hpp

来自「"More for C++" is a class library that p」· HPP 代码 · 共 69 行

HPP
69
字号
////  This file is part of the "More for C++" library////  Copyright (c) 1999-2003 by Thorsten Goertz (thorsten@morefor.org)////  The "More for C++" library is free software; you can redistribute it and/or//  modify it under the terms of the license that comes with this package.////  Read "license.txt" for more details.////  THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED//  WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES//  OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.////////////////////////////////////////////////////////////////////////////////#ifndef ALIGNINGHEAPMANAGER_HPP#define ALIGNINGHEAPMANAGER_HPP////////////////////////////////////////////////////////////////////////////////#include <more/core/heapmanager.hpp>////////////////////////////////////////////////////////////////////////////////namespace more{  namespace core  {    class AligningHeapManager: public HeapManager    {      public:        AligningHeapManager( );        virtual ~AligningHeapManager( );        virtual void* createObject( size_t nSizeOfObject );        virtual void destroyObject( void* pObject );        virtual void compactHeap( );      private:        class AlignedObjects        {          public:            AlignedObjects( size_t nAlignment );            virtual ~AlignedObjects( );            void* createObject( size_t nSizeOfObject );            size_t compact( );          private:            size_t m_nAlignment;            size_t m_nCapacity;            size_t m_nNextObject;            void* m_pObjects;            AlignedObjects* m_pNextAlignedObjects;        };        AlignedObjects m_alignedObjects0;        AlignedObjects m_alignedObjects1;        AlignedObjects m_alignedObjects2;        AlignedObjects m_alignedObjects3;        AlignedObjects m_alignedObjects4;        AlignedObjects m_alignedObjects5;    };  }}////////////////////////////////////////////////////////////////////////////////#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?