ゲーム開発へのオブジェクト指向の適用1

ファクトリクラス

ファクトリクラスとは、「インスタンスを生成するクラス」のことです。
 
例えば、ファクトリクラスはMakeXXXToken(type)というメンバ関数を持っています。
この関数は、引数で「トークンの種類」を受け取り、
指定したトークンをnewして、メンバ変数のトークンリストに登録し、
戻り値として「インスタンスの参照」を返します。
 
生成したトークンを削除する場合には、
トークンのメンバ関数Destroy()を呼び出し、deleteします。
 
このような仕組みにすると何が嬉しいのかというと、
ファクトリが存在するシーンが終了した場合に、
トークンリストにトークンが残っていた場合にメモリリークとして、
エラー報告が行えるからです。
 
もしくはトークンリストからトークンを全て削除するという、
ガベージコレクタとすることも可能となります。