【发布时间】:2015-08-27 13:00:18
【问题描述】:
比如说你有这样的东西,试图让这个例子尽可能简单。
type Home struct {
Bedroom string
Bathroom string
}
如何将字段名称传递给函数?
func (this *Home) AddRoomName(fieldname, value string) {
this.fieldname = value
}
显然这不起作用...我能看到的唯一方法是使用两个函数,当结构变得非常大并且有很多类似的代码时,这会添加很多额外的代码。
func (this *Home) AddBedroomName(value string) {
this.Bedroom = value
}
func (this *Home) AddBathroomName(value string) {
this.Bathroom = value
}
【问题讨论】:
-
请问您不使用
map[string]string的原因是什么?我个人会避免使用反射向应用程序添加琐碎的功能,解决方法可能更好。 -
与我正在尝试做的相比,上面的示例非常简单,但足以说明问题。
-
看起来可能但值得一问。您可能仍需要在此级别考虑不同的模型。