在C ++中,是否可以以可编程方式访问导致std::out_of_range
在catch块中抛出的容器?
编辑:我不打算调试或恢复有问题的容器。我只是有两个不同的容器,其中有lambda函数。catch块中的流量取决于哪个容器是有问题的容器。
答案 0 :(得分:0)
如果您控制抛出异常,那么您可以尝试创建自己的自定义异常,然后再抛出它。虽然如果你已经知道引起异常的情况,你为什么要抛弃它。 抛出并捕获自己的异常通常是没有意义的,但在特殊情况下,您可以尝试这样做。所以你需要编写自己的异常类,它封装有关容器的信息,抛出然后处理它。
但是,在处理异常时容器的状态是有问题的。
考虑以下事项: