class CSystem
{
protected:
static int m_iValue;
public:
int GetValue() { return m_iValue; }
void SetValue( int v ) { m_iValue = v; }
};
class CTask : public CSystem
{
char m_szName[1024]; // タスクの名前
int g_iNumber; // タスクの番号
public:
CTask( char *name );
~CTask();
void Draw( int x, int y );
};
vector<CTask*> g_mvTask;
//==================================================================
// 初期化
void Init()
{
CTask *task;
task = new CTask( "タスク1" );
g_mvTask.push_back( task );
task = new CTask( "タスク2" );
g_mvTask.push_back( task );
task = new CTask( "タスク3" );
g_mvTask.push_back( task );
task = new CTask( "タスク4" );
g_mvTask.push_back( task );
task = new CTask( "タスク5" );
g_mvTask.push_back( task );
}
void Loop()
{
g_mvTask.at(0)->SetValue( rand()%255 );
}
g_mvTask[1].m_iValue
g_mvTask[2].m_iValue
g_mvTask[3].m_iValue
g_mvTask[4].m_iValue
の値も全部変更になるんですが、これでよかったでしょうか?
確認はしたのですが、偶然だったら怖いのでこれで合っているかどうかを聞きたいです
使い方としては タスク1、タスク2、タスク3、タスク4、タスク5 で同じ変数を共有、使用したいのです