gpt4 book ai didi

go - 如何在Golang中为不同类型创建通用函数

转载 作者:数据小太阳 更新时间:2023-10-29 03:46:43 24 4
gpt4 key购买 nike

我在golang中有一些代码,它连接到kubernetes集群并打印pod列表和configmaps列表。
以下是两个类似的功能:

func (k *kubeEntity) getpods(ns string, cs kubernetes.Clientset) {
pods, err := cs.CoreV1().Pods(ns).List(metav1.ListOptions{})
if err != nil {
panic(err.Error())
}
for i, pod := range pods.Items {
fmt.Println(i, ":", pod.Name, "|", pod.Status.Phase)

}
}
func (k *kubeEntity) getcm(ns string, cs kubernetes.Clientset) {
cms, err := cs.CoreV1().ConfigMaps(ns).List(metav1.ListOptions{})
if err != nil {
panic(err.Error())
}
for i, cm := range cms.Items {
fmt.Println(i, ":", cm.Name)
}
}

如何编写一个全局/通用函数来完成这两种情况下的任务?
提前谢谢

最佳答案

gohttp://golang.org/doc/faq#generics中暂时没有泛型。
它应该出现在Go2.0中,您可以在这里看到草稿版本中泛型的反馈:https://github.com/golang/go/wiki/Go2GenericsFeedback

关于go - 如何在Golang中为不同类型创建通用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54926511/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com