关于golang的error判断

e1 := errors.New("hello error")
e2 := errors.New("hello error")

按照我之前的理解,上面的两个error(e1, e2)应该是相等的,但是结果是不相等的, 测试代码如下

package main

import (
	"errors"
	"fmt"
)

func main() {
	e1 := errors.New("hello error")
	e2 := errors.New("hello error")
	fmt.Println(e1 == e2)
}

参考 go源码中 errors/errors_test.go

你可能感兴趣的:(关于golang的error判断)