Alternate e697dbe9c5997e35395fe158628dd8c5209481da
for Visual Studio 2022 and Windows 11.
読み取り中…
検索中…
一致する文字列を見つけられません
HeapMemory.h
[詳解]
1// ----------------------------------------------------------------------------
6
7#pragma once
8
9#include "WindowsLibrary.h"
10#include "Memory.h"
11
12namespace alt
13{
17 {
18 public:
24 virtual LPVOID APIENTRY Allocate (SIZE_T bytes, DWORD dwFlags = MEM_ZERO);
25
32 virtual LPVOID APIENTRY Reallocate (
33 LPVOID lpvMem, SIZE_T bytes, DWORD dwFlags = MEM_ZERO);
34
40 virtual BOOL APIENTRY Free (LPVOID lpvMem);
41 };
42
46 {
47 public:
49 APIENTRY HeapMemory ();
50
52 APIENTRY HeapMemory (const HeapMemory& base);
53
55 APIENTRY ~HeapMemory ();
56
66 BOOL APIENTRY Create (
67 SIZE_T initialSize = 0, SIZE_T maximumSize = 0,
68 DWORD dwOptions = 0);
69
74 BOOL APIENTRY Open ();
75
80 BOOL APIENTRY Close ();
81
85 SIZE_T APIENTRY Compact () const;
86
92 virtual LPVOID APIENTRY Allocate (SIZE_T bytes, DWORD dwFlags = MEM_ZERO);
93
100 virtual LPVOID APIENTRY Reallocate (
101 LPVOID lpvMem, SIZE_T bytes, DWORD dwFlags = MEM_ZERO);
102
108 virtual BOOL APIENTRY Free (LPVOID lpvMem);
109
110 private:
111 SIZE_T APIENTRY BoundarySize (SIZE_T bytes) const;
112
115 };
116}
#define DLL_DECLSPEC
Definition: framework.h:17
メモリに関するインターフェースを定義したクラス
#define MEM_ZERO
Definition: Memory.h:11
WindowsAPIを集約したプロジェクトファイル
malloc/realloc/freeを使った標準的なメモリクラス
Definition: HeapMemory.h:17
HANDLEを扱うWindowsAPIを集約した基底クラス
ヒープメモリに関するAPIを集約したクラス
Definition: HeapMemory.h:46
APIENTRY HeapMemory(const HeapMemory &base)
コピーコンストラクタ
プロジェクト共通基底クラス
メモリの獲得・解放のインターフェースクラス
Definition: Memory.h:20
Definition: DBLibrary.h:12