下图 接口有泛型,方法没有泛型, RealName 是实现了 Name 接口的
![image.png](https://static.golangjob.cn/230302/67ee27d87498ba6ed24fedaf7cdf2164.png)
为什么 给Name接口中的Say方法使用泛型传参,RealName 就没有实现 Name 接口了
![image.png](https://static.golangjob.cn/230302/2939be68d68a091bc041e5aecb46e18d.png)
下面是 ChatGPT 的说法 0.o
![image.png](https://static.golangjob.cn/230303/b4678cf1451aa866f1c47b1c5948fff3.png)
![image.png](https://static.golangjob.cn/230303/283d85f88abc40e714539ac984e139d1.png)
#5
更多评论
你这个是对的吧,我运行成功了,估计是编译器版本太旧没提示出来吧。
```go
package main
import (
"fmt"
)
func main() {
var s Name[int] = RealName[int]{}
s.Say(123)
}
type Name[T any] interface {
Say(t T)
}
type RealName[T any] struct {
}
func (r RealName[T]) Say(t T) {
fmt.Println(t)
}
```
#1
![image.png](https://static.golangjob.cn/230303/fbcae9aa08b0b80fdcff13f880682238.png)
运行成功了,确实是编译器的问题
我这边使用的IDE是 GoLand 2021.3.2
大佬是使用哪个版本的呀
#2