轻松的编程学习
首页
题库
学习路径
在线商城
能力地图
下载应用
登录 / 注册
菜单
🔴 三个资源,一条异常路
👁️ 2 人浏览
💬 0 人评论
❤️ 添加收藏
(本条路线统一用
g++ -std=c++17 -O0 -Wall
编译)
提交你的答案
请登录后提交答案。
去登录
← ⚠️ 抓住它,别让它把程序带走
⚠️ 容器里的资源,异常路上也不漏 →
更多题目
改成"你好,有词"
输出"100 分"
把年龄改成 20
输出学习天数 30
修复:给文字加引号
修复:补上右括号
代码编辑器
语言:
python3
c11
cpp17
Ctrl
+
Enter
运行
👩🏫 AI
▶ 运行代码
重置代码
打印代码
#include <iostream> #include <memory> #include <vector> #include <stdexcept> struct Res { static int made, gone; Res() { made++; } ~Res() { gone++; } }; int Res::made = 0; int Res::gone = 0; /* TODO: 三个资源都要在异常路上活下来(不欠着), 把三个裸 new 改成不用手动还的写法 */ static void work(int boom) { Res *a = new Res(); Res *b = new Res(); Res *c = new Res(); if (boom) throw std::runtime_error("boom"); delete a; delete b; delete c; } int main() { try { work(1); } catch (const std::exception &) {} std::cout << Res::made << "/" << (Res::made - Res::gone) << "\n"; return 0; }
本次输入:
输出:
👩🏫
AI
请登录后使用 AI 老师
×
登录后可获得解题思路、提示与错误分析。
去登录
关闭
🎉
恭喜你,回答正确!
系统判定:正确
我知道了
💬 题目评论
提交
全部评论
全部评论