因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
因为go的错误处理怎么看都毫无意义 从类型论角度来说 一个result和err的tuple是个product type,但两个只有可能有一个是合理的 对于这种情况如果要用类型来模拟错误的话最合理的是像rust这样定义一个 sum type,这样安全的很多 从软件工程角度 一般代码可以在顶层套一层捕获 碰到一个error直接抛出被接住中断procedure 而且多层嵌套也有traceback stack清晰标出调用关系 但go这种防御式编程直接把error当一个变量了 所以你学要手…。
这个问题的潜台词是“为什么是 go 而不是 j***a”对吧...
2025-06-22阅读全文 >>1980年代的河南地下城 上世纪60年代初,中苏交恶。 面对...
2025-06-22阅读全文 >>2003年~2010年,鼓励农村修建沼气池,说这东西不仅能解...
2025-06-22阅读全文 >>Electron既不是游戏引擎,也不是新时代,也不会带来变革...
2025-06-22阅读全文 >>我姐跟我科普过,胸基本上就两种,腺体胸和脂肪胸 腺体胸这种主...
2025-06-22阅读全文 >>