|
Байланысты: pavlovskaia-jogargy-dengeiliclass pObj{
public:
static void * operator new(size_t size);
...
private:
union{
Obj *p; // Объектіге нұсқауыш
pObj *next; // Келесі бос ұяшыққа нұсқауыш
};
static const int BLOCK_SIZE;// Блоктың өлшемі
// Бос ұяшықтар тізімінің тақырыбы:
static pQbj *headOfFree;
};
void * pObj::operator new(size_t size){
// new стандартты операциясының дұрыс көрсетілмеген
// жады көлеміне сұранысын қайта бағыттау:
if (size != sizeof(pObj)) return ::operator
new(size);
pObj *p = headOfFree; //Алғашқы бос ұяшыққа нұсқауыш
Достарыңызбен бөлісу: |
|
|