0

少数のプログラムで使用されるヘルパー ライブラリに SDL_net を使用したいと考えています。ただし、これらのプログラムの一部は、すでに SDL 自体を使用している可能性があります。SDLインスタンスはメインプログラムとライブラリ間で共有されているため、ライブラリを初期化/解放するときにSDL_Initandをやみくもに使用できないことを意味します。SDL_Quit

これまでの私の最善のアイデアは、プログラムが既に SDL を使用しているかどうかを示すパラメーターを渡せるようにすることです。これにより、プログラムは最初に SDL_Init を呼び出す責任を負います。よりクリーンなソリューションがあるかどうかは疑問ですが。SDL_WasInit有望に見えましたが、SDL自体が初期化されているかどうかではなく、初期化されたサブシステムのチェックのみを許可しているようです(これは で実行できますSDL_Init(0))。

これはSDL 1.2についてです。

4

1 に答える 1

0

SDL_WasInit()特定のサブシステムが実行されているかどうかを確認するために使用できますがSDL_WasInit(SDL_INIT_VIDEO) != 0、SDL_WasInit()のSDL ドキュメントSDL_WasInit(SDL_INIT_EVERYTHING) != 0では、 orを渡すとSDL_WasInit(0) != 0、SDL のサブシステムが実行されているかどうかを知ることができます。

于 2012-05-30T21:53:50.517 に答える