写一个能套多种容器的组件
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)三种容器都要能用。
🔴 目标是空的,让它自己长
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)
⚠️ 泛型的"找第一个"
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)第二个容器里一个都没有。
🔴 让它同时吃得下 map 和 vector
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)两种容器的元素都是"一对"。
🔴 自定义异常该继承谁
写自己的异常类,最该继承的是【0】。
⚠️ 几个 catch 的顺序有讲究吗
同一个 try 后面跟好几个 catch,顺序是【0】。
⚠️ 中间那层接住了但处理不了,该怎么办
中间一层 catch 到异常,发现自己处理不了,最该做的是【0】。
🔴 两个 catch,只进了具体那个
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译) #include <iostream> #include <stdexcept> #include <string> /* 自
⚠️ 原样重抛,类型一点没变
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)中间那层接住之后又原样扔了出去: #include <iostream> #include <stdexcept> #include <
定义一个自己的异常
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)要能被 catch (const std::exception &) 兜住,而且 what() 要交得出构造时那句话。