#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
enum
{
MODE_FINISH, // 終了
MODE_INPUT, // 入力
MODE_OUYPUT, // 出力
MODE_SAVE, // セーブ
MODE_LORD, // ロード
MODE_MAX
};
//=========================================
//
//モンスタークラス 入力処理 出力処理
//
//=========================================
class Monster
{
int hp;
public:
void inputData();
void outputData();
};
void Monster::inputData()
{
printf("hp ->");
scanf("%d",&hp);
}
void Monster::outputData()
{
printf("hpは%d", hp);
}
//=========================================
//
//データクラス 入力処理 出力処理
//
//=========================================
class Data
{
int num; // 入力モンスター数
Monster *monst; // Monsterクラスのポインタ
void input(); // 入力処理
void output(); // 出力処理
public:
void selectMenu(void); //メニュー処理関数
Data() // コンストラクタ
{
printf("コンストラクタを実行します\n");
}
~Data() // デストラクタ
{
printf("デストラクタを実行します\n");
}
};
void Data::input(void)
{
printf("何体のデータを入力しますか?");
scanf("%d", &num);
Monster* monst = new Monster[num];
for (int i = 0; i < num; i++)
{
printf("<%d>体目のデータ>\n", i + 1);
monst[i].inputData();
}
delete[] monst;
rewind(stdin);
getchar();
}
void Data::output(void)
{
for (int i = 0; i < num; i++)
{
printf("<%d>体目のデータ>\n", i + 1);
monst[i].outputData();
}
}
//===================================
//
// メニュー処理
//
//===================================
void Data::selectMenu(void)
{
bool loop = true;
while (loop)
{
printf("======================================\n");
printf("%d:データ入力\n", MODE_INPUT);
printf("%d:データの表示\n", MODE_OUYPUT);
printf("%d:データをセーブ\n", MODE_SAVE);
printf("%d:データをロード\n", MODE_LORD);
printf("%d:プログラムを終了\n", MODE_FINISH);
printf("======================================\n");
int mode = 0;
while (mode < MODE_FINISH || mode >= MODE_MAX)
{
scanf("%d", &mode);
}
switch (mode)
{
case MODE_INPUT: // 入力処理
input();
break;
case MODE_OUYPUT: // 出力処理
//output();
break;
case MODE_SAVE: // セーブ
//save();
break;
case MODE_LORD: // ロード
//lord();
break;
case MODE_FINISH: // 終了
loop = false;
break;
}
}
}
//============================
//
//メイン処理
//
//============================
int main(void)
{
Data data;
//モード選択
data.selectMenu();
//入力待ち
rewind(stdin);
getchar();
return 0;
}
移行の処理がうまくいってないみたいなんですが、分からないので教えていただきたいです。