我有一个由多个相同类型的字段组成的结构。
type test struct{
A int
B int
C int
}
我想将一个功能对三个字段执行相同的操作,但我只想每次都做一个。
function something (toto test, cond int) {
if (cond == 1){
// then we will use A for the rest of the function
}else if (cond == 2) {
// then we use B etc....
} ...
for mail, v := range bdd {
if _, ok := someMap[v.A]; !ok { // use v.A or V.B or V.C
delete(bdd, mail)
}
...
}
...
}
该函数真的很长,我很困扰我将代码复制了 3 次,只是为了改变一行。我尝试了反射包。我认为这是一个危险的想法。