目次 - SDL 3.0 API(機能別) - 標準ライブラリ - SDL_SetMemoryFunctions

SDL_SetMemoryFunctions

SDLのメモリ関数を置き換える

ヘッダ

SDL3/SDL_stdinc.h

構文

bool SDL_SetMemoryFunctions(SDL_malloc_func malloc_func, SDL_calloc_func calloc_func, SDL_realloc_func realloc_func, SDL_free_func free_func);

引数

SDL_malloc_funcmalloc_funcカスタムmalloc関数
SDL_calloc_funccalloc_funcカスタムcalloc関数
SDL_realloc_funcrealloc_funcカスタムrealloc関数
SDL_free_funcfree_funcカスタムfree関数

戻り値

(bool) 成功のとき真, 失敗のとき偽を戻す. SDL_GetError()を呼んで詳細を知ることができる.

詳細

一度でもメモリを確保した後にこの関数を呼ぶのは安全ではない. 設定前のSDL_mallocで確保した領域に対して新しく設定したSDL_freeが使われる可能性があるためである.

これを使用する場合, 通常はSDLライブラリの最初の呼び出しの必要があり, 場合によってはプログラム起動後の最初の呼び出しの必要がある.

スレッドセーフ

この関数はどのスレッドからも安全に呼べるが, 一度でもメモリ確保関数を呼んだ後でメモリ関数を置き換えてはならない.

バージョン

SDL 3.2.0以降

関連項目

SDL Wikiへのリンク

SDL_SetMemoryFunctions - SDL Wiki