引发了异常: 读取访问权限冲突。 this 是 0xFF

visual studio中调用类函数运行没有问题 但是运行完后程序停止了

使用调试功能提示的内容是下面这个

img

相关程序:

cout << "1 新游戏 2 加载存档" << endl;
cin >> a1;
while (a1 != '1' && a1 != '2')
{
cout << "无此操作,请重新输入"<<endl;
cin >> a1;
}
if (a1 == '1')
{
monster m1("a", 1, 10, 1, 10, 1, 0, 1, 1);
monster m2("b", 1, 10, 2, 10, 1, 0, 1, 1);
monster m3("c", 1, 10, 3, 10, 1, 0, 1, 1);
monster m4("d", 1, 10, 4, 10, 1, 0, 1, 1);

    cout << "请完善个人信息" << endl;
    cout << "你的名字为:";
    cin >> b_name;
    p1.setname(b_name);
    cout << "请选择初始...:";
    cout << "1 a   2 b   3 c   4 d" << endl;//展示初始.. 的信息
    cin >> a2;
    while (a2 != '1' && a2 != '2' && a2 != '3' && a2 != '4')
    {
        cout << "无此操作,请重新输入" << endl;
        cin >> a2;
    }
    switch (a2)
    {
    case '1':
        p1.getmonsters(m1);
        break;
    case '2':
        p1.getmonsters(m2);
        break;
    case '3':
        p1.getmonsters(m3);
        break;
    case '4':
        p1.getmonsters(m4);
        break;
    }
    cout << "tag 1" << endl;
}
cout << "tag 2" << endl;

这里输出完tag 1程序停止了
(另一个if的内容没加)

检查了类函数的实现 都没问题 不明白程序停止了原因

加个断点调试一下,看看调用堆栈和相关变量的值