Go 简洁与效率之道, 匿名结构体的运用_golang 匿名结构体还是先定义好结构体性能好
package main
import (
"fmt"
"time"
)
// 定义一个简单的计算函数
func calc(a, b int, op string) (int, error) {
switch op {
case "+":
return a + b, nil
case "-":
return a - b, nil
case "*":
return a * b, nil
case "/":
if b == 0 {
return 0, fmt.Errorf("除数不能为0")
}
return a / b, nil
default:
return 0, fmt.Errorf("未知的操作符: %s", op)
}
}
func main() {
// 匿名结构体实例化
start := struct {
time.Time
}{Time: time.Now()}
// 执行一些计算任务
result, err := calc(10, 5, "*")
if err != nil {
fmt.Println("计算错误:", err)
return
}
fmt.Printf("计算结果: %d\n", result)
// 匿名结构体实例化并访问方法
end := struct {
time.Time
}{Time: time.Now()}
fmt.Printf("耗时: %v\n", end.Sub(start.Time))
}
这个代码示例展示了如何在Go中使用匿名结构体,以及如何在一个函数中根据不同的操作符执行基本的算术运算,并且记录下执行这个计算任务所需的时间。这个示例简洁而高效,适合作为Go语言学习者的一个实用教程。
评论已关闭