「已注销」 2018-03-24 09:18 采纳率: 100%
浏览 1019
已结题

C++自定义异常出错,有大神知道这是咋回事吗?

图片说明

#define _CRT_SECURE_NO_WARNINGS
#include
using namespace std;

class MyException{
public:
MyException(char* str){
error = new char[strlen(str)+1];
strcpy(error, str);
}
void what(){
cout << error << endl;
}
public:
char* error;

~MyException(){
    if (error != NULL){
        delete[] error;
    }
}

};
void fun3(){
MyException my("aaaa");
throw my;
}
void test01(){

try{
    fun3();
}
catch (MyException e){
    e.what();
}

}
int main(void)
{
test01();
system("pause");
return 0;
}


  • 写回答

3条回答

  • qq_31689077 2018-03-24 09:30
    关注

    删除了由系统释放的指针或者 删除动态分配的指针的时候没有指向最初的地址
    https://blog.csdn.net/u011068702/article/details/63702336

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制