最近ハマっていること

アバター
GRAM
記事: 164
登録日時: 14年前
住所: 大阪

最近ハマっていること

投稿記事 by GRAM » 14年前

ありゃりゃ、大学の学祭が終わってしまった…

せっかくの5日間の休みだったというのに時間に追われてほとんど何もできていない…OTL

そしてタイトルにある最近ハマっていること
それは…「シングルトン・クラス」なるものを作って使う事
なんか一つしかインスタンスのないことが保証されているクラスのようだけれど、どのcppファイルから呼び出しても「一つしかない」ようで超便利。

特に管理クラスや、入出力関係のクラスによく使っています。
なんかmainのファイルのコードがものすごく小さくなった

CODE:

#include "DxLib.h"
#include "Game.h"			//ゲームの内部計算は全部こいつがやる
#include "InputManager.h"	//キー入力の管理を行うクラス
#include "Graphics.h"		//画面への出力は全部こいつ

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
	ChangeWindowMode( TRUE );
	if( DxLib_Init() == -1 )	return -1;
	if(DxLib_Init() == -1 || SetDrawScreen( DX_SCREEN_BACK )!=0) return -1;
	if( !Game::Create() )			return -1;	//Gameクラスのインスタンス作成
	while(ProcessMessage()==0 && !Game::Instance()->isEnd()){		//ゲームが終了していない限りは
		InputManager::Instance()->Update();		//キー入力の更新
		Game::Instance()->Update();				//ゲームの内部計算の更新
		Graphics::Instance()->Update();			//グラフィック処理の更新
		ScreenFlip();
	}
	Game::Release();	//Gameクラスのインスタンスの削除
	DxLib_End();
	return 0 ;
}
自分は二つのシングルトンのパターンを使っていて
一つは最初から実体が確保されている形式(この場合のInputManagerとGraphics)
もうひとつはCreateで作成してReleaseで開放するタイプ(この場合のGame)
内部で確保するメモリが大きいのにいつも使うわけではないシングルトンクラスは後者で作っています。(Gameが後者なのは中身の対称性を保つためです)

…新しいことを覚えるとすぐに使ってしまいたくなる性質の人間なんです。
最後に編集したユーザー GRAM on 2010年11月26日(金) 00:44 [ 編集 1 回目 ]

コメントはまだありません。