< 返回版块

sstudioer 发表于 2021-02-18 20:38

懒得处理错误, 凡是错误都会panic;

如何能够像golang defer那样在外层函数中捕获panic? 然后处理? 不想让panic终止程式.

评论区

写评论
作者 sstudioer 2021-02-21 09:31

thanks;

--
👇
snylonue: std::panic::catch_unwind(), 有一些限制 (传入的闭包要实现 UnwindSafe)
不过我感觉一路问号比这个香多了(
另外 std::panic 里还有一些函数或许有用,我没研究过

作者 sstudioer 2021-02-21 09:31

thanks;

👇
Dennis-Zhang-SH: 我觉得你的思路是错的,传递错误不应该Panic,Panic只应该在必要的时候去用,你完全可以用一个函数返回Result类型,再用?这个语法糖去做错误处理

Dennis-Zhang-SH 2021-02-19 17:27

我觉得你的思路是错的,传递错误不应该Panic,Panic只应该在必要的时候去用,你完全可以用一个函数返回Result类型,再用?这个语法糖去做错误处理

snylonue 2021-02-18 21:19

std::panic::catch_unwind(), 有一些限制 (传入的闭包要实现 UnwindSafe)
不过我感觉一路问号比这个香多了(
另外 std::panic 里还有一些函数或许有用,我没研究过

1 共 4 条评论, 1 页