Я пытаюсь установить значение свойства в конкретной структуре с помощью метода, который использует интерфейс, реализованный этой структурой.Структура также состоит из другой структуры.
В приведенном ниже примере значение userId остается "aaaa" и не обновляется до "userid1".
Как я могу обновить значения struct через интерфейс метода в качестве параметра и struct как аргумент?
func main() {
user:=User{}
mw:=SomeMiddleware{}
user.UserId="aaaa"
mw.Process(user)
fmt.Println("UserId: " + user.UserId)
}
type IUser interface {
SetUserId(string)
}
type SomeMiddleware struct {
}
func(m SomeMiddleware) Process(user IUser){
user.SetUserId("userid1")
}
type User struct {
UserInfo
}
type UserInfo struct {
UserId string
}
func(ui UserInfo) SetUserId(userId string) {
ui.UserId=userId
}