SDXFrameWork  0.04
SDXFrameWork
 全て クラス ネームスペース 関数 変数 ページ
Pool.h
1 #pragma once
2 #include <vector>
3 
4 namespace SDX
5 {
7 class Pool
9 {
10 private:
11  std::vector<char> byte1;
12  std::vector<char> byte2;
13  std::vector<char> byte4;
14  std::vector<char> byte8;
15  std::vector<char> byte16;
16  std::vector<char> byte32;
17  std::vector<char> byte64;
18  std::vector<char> byte128;
19 
20  Pool& Single()
21  {
22  static Pool pool;
23  return pool;
24  }
25 
26 public:
27  static void* Allocate( size_t size)
28  {
29 
30  }
31 
32  static void* DeAllocate( void* p)
33  {
34 
35  }
36 };
37 
39 class Allocater
41 {
42 public:
43  void* operator new( size_t size )
44  {
45  Pool::Allocate( size );
46  }
47 
48  void operator delete( void* p )
49  {
50  Pool::DeAllocate( p );
51  }
52  void* operator new(size_t, void* p)
53  {
54  return p;
55  }
56  void operator delete(void*, void*)
57  {
58  }
59 };
60 }