我试图在我创建的锻炼跟踪程序中实现异常处理,目前没有错误检查。我有一个Exlist
类来处理一个链表一系列的功能,一些重要的功能,我想在加的异常处理:捕捉类功能引发的异常
- 更新列表到文本文件
- 排序列表按日期
- 编辑锻炼(搜索列表使用键)用键删除
- 删除锻炼(搜索列表)
- 添加锻炼
^h我会去抛出一个类中的函数的异常,并在int main()
中捕获它们。我知道简单的异常处理在同一个块中,但我似乎无法想出一个解决方案来解决这个问题。我的理想情况是:
//in int main, when the user selects add
try
{
WorkoutList.addEx();
}
//other code...
//catch at end of loop and display error
catch(string error)
{
cout << "Error in: addEx..." << error << endl;
}
是否有任何不工作用你提交的代码? –
不要抛出'std :: string'对象!你应该只抛出派生自std :: exception'的类的对象,尽管你可以抛出任何可复制的类,但捕获随机类使得它更难确定发生了什么。捕捉'std :: exception const&'并查看'what()'成员是否至少给出了一些提示。 –
这正是例外情况!只需将它们扔到任何地方'冒泡'直到它们被抓住,破坏掉那些超出范围的物体 – Roddy