foxcn 2015-09-23 03:31 采纳率: 0%
浏览 2888

c++用什么替代goto处理错误返回

c风格用goto处理函数的错误返回清理工作等,c++是否只能用异常?do while结构遇到逻辑里面有循环就歇菜了。。

 int foo()
{
    ReportInfo rinfo;
    int ret = 0;

    ret = dosth1();
    if (ret != 0)
    {   
        goto error_handler;
    }   

    handle_logic1(&rinfo);

    ret = dosth2();
    if (ret != 0)
    {   
        goto error_handler;
    }   

    handle_logic2(&rinfo);

error_handler:

    rinfo.set_ret(ret);
    ReportTo(rinfo);

    return ret;
}
  • 写回答

6条回答 默认 最新

  • lgstudyvc 2015-09-23 03:36
    关注

    好好设计吧,
    goto的存在有时还是比较直观的

    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵