首页 > 解决方案 > Golang在处理错误返回时删除重复代码

问题描述

我正在通过创建 Web 应用程序来学习 Golang。在使用 Go 时,我经常遇到这种情况

err = SomeFunction()

// Handling err
if err != nil {
   Logging(err)
   return err
}

在 C 或 C++ 中,“处理错误”部分我可以使用 MARCO 或 INLINE FUNCTION 删除重复代码。任何人都知道如何在 Golang 中做到这一点?

标签: goerror-handlingcode-duplication

解决方案


你可以使用 https://gitlab.com/opennota/macro

在 input.go.tmpl 中定义宏

func MACRO_m1(a, b int) {
    a = b ^ 1
}

func main(){
   m1(v1, v2)
}

在命令行上

macro input.go.tmpl output.go

将转换为

func main(){
     v1 = v2 ^ 1       
}

推荐阅读