我正在编写一个需要良好错误处理的 C 程序。代码是这样的:
If(doWork("A")<0){
return -1;
}
If(doWork("B")<0){
undoWork("A");
return -1;
}
If(doWork("C")<0){
undoWork("A");
undoWork("B");
return -1;
}
return 0;
这段代码有效,但看起来很乱,特别是我有一长串doWork(X)
要调用的。在这种情况下,是否有更好、更清洁的方法来处理错误?