/***********************************************************************/ //文 件 名:CBuffers.h //功 能:CBuffers类声明 // CBuffers类是一个利用内存池机制来分配内存的工具类 /***********************************************************************/ #ifndef __CBuffers__ #define __CBuffers__ class CBuffers { public: char* GetBuf(size_t lsize); char* Extern(size_t maxSize); char* Copy( void * lpData, size_t lsize ); char* Append( void * lpData, size_t lsize ); void Attach( CBuffers*pMemory ); void Detach(); void Release(void); inline operator const char * (void) const; const CBuffers& operator=(const char * lpString); const CBuffers& operator+=(const char * lpString); //绑定地址:自动释放 CBuffers(void * lpBuffer=0); ~CBuffers(void); size_t sizeData,sizeMalloc; char *bufData; }; #define FREE_BUFFER( x ) \ { \ CBuffers buf( x ); \ } #define INIT_BUFFER( x, n ) \ { \ CBuffers buf; \ x = buf.GetBuf( ( n ) ); \ buf.Detach(); \ } #endif //__CBuffers__