みんな大好き、シングルトン

ヘッダ

#pragma once

class MyUser
{
private:
	static MyUser* user;
	MyUser(void); // コンストラクタ隠蔽

public:
	~MyUser(void); // デストラクタ

	static MyUser* getInstance();
};

実装

#pragma once
#include "StdAfx.h"

MyUser* MyUser::user = NULL; // シングルトン初期化

MyUser::MyUser()
{
	// コンストラクタ
}

MyUser::~MyUser(void)
{
	// デストラクタ
}

MyUser *MyUser::getInstance() {
	OutputDebugString("MyUser::getInstance()\r\n");
	if ( user == NULL ) {
		OutputDebugString("MyUser::getInstance() create instance\r\n");
		user = new MyUser();
	}
	return user;
}

利用

MyUser *user = MyUser::getInstance();